Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Max_by не пашет, Очень интересно, чем можно заменить 
:(
    Опции темы
Liza1700
Дата 23.6.2009, 19:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 23.6.2009
Где: iNternet

Репутация: нет
Всего: нет



Такой вопросик, нужно определить максимальное большое слово (вытащить из массива) 
Я пишу

Код

puts "type values" 
 a = gets.strip.split(' ') 


b = a.max_by{ |x| x.size}
  puts " #{b}"


Результат - undefined method `max_by' for ["some", "some2" ] :Array (NoMethodError)

Потом почитала, что max_by ввели относительно недавно... а моя версия интерпретатора 1.8.6 

Тогда в чем же ошибка? или если можно как то заменить max_by то как?
PM WWW   Вверх
GrayCardinal
Дата 23.6.2009, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фигасе
****


Профиль
Группа: Завсегдатай
Сообщений: 3039
Регистрация: 9.11.2003

Репутация: нет
Всего: 58



Liza1700, 
Код

max = 0
a.each { |one| 
  max = one if one.size > max
}

результ в max

Это сообщение отредактировал(а) GrayCardinal - 23.6.2009, 20:07


--------------------
PM MAIL WWW   Вверх
Liza1700
Дата 23.6.2009, 20:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 23.6.2009
Где: iNternet

Репутация: нет
Всего: нет



Спасибо что откликнулись)

Но к сожалению, что то он опять ругается(как я поняла вы попытались идентифицировали max=0)

Вот ошибка:
comparison of Fixnum with String failed (ArgumentError)


Это сообщение отредактировал(а) Liza1700 - 23.6.2009, 20:25
PM WWW   Вверх
shine
Дата 23.6.2009, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 137
Регистрация: 20.10.2006

Репутация: 3
Всего: 5



Сортируем по возрастанию длины и берем последний - самый длинный - элемент массива:
Код

a.sort_by{|item| item.size}.last

--------------------
An investment in knowledge always pays the best interest. © Benjamin Franklin
PM MAIL   Вверх
Liza1700
Дата 23.6.2009, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 23.6.2009
Где: iNternet

Репутация: нет
Всего: нет



Как мне жаль, что у меня нету 100 постов , я бы с удовольствием вам поставила + !!!!

Огромное спасибо!!!Все заработало!!! ^^ 
PM WWW   Вверх
GrayCardinal
Дата 24.6.2009, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Фигасе
****


Профиль
Группа: Завсегдатай
Сообщений: 3039
Регистрация: 9.11.2003

Репутация: нет
Всего: 58



Liza1700, 
Ступил. Писал на коленке  smile 


--------------------
PM MAIL WWW   Вверх
fixxer
Дата 25.6.2009, 15:55 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 14.9.2006
Где: Саратов, Россия

Репутация: нет
Всего: 27



Enumerable#max может брать блок, в доках есть пример.

Это сообщение отредактировал(а) fixxer - 25.6.2009, 15:55


--------------------
user posted image
PM MAIL ICQ   Вверх
Liza1700
Дата 25.6.2009, 16:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 23.6.2009
Где: iNternet

Репутация: нет
Всего: нет



Спасибо, посмотрела ) ^^
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Ruby: Общие вопросы"
source777
  • С чего начать? начинаем
  • Ссылки на полезные ресурсы смотрим тут
  • Обязательно следуйте правилам Vingrad.
  • Пожалуйста, прочитайте рекомендации по работе в форуме и навигации по Vingrad.
  • Для вставки кодов Ruby используйте тег: [code=ruby]код[/code]. Когда в будущем подсветка синтаксиса для Ruby будет реализована, весь исходных код преобразится.
  • Используйтe чекбокс "Транслит" (возле кнопок кодов), если у Вас нет русских шрифтов.
  • Помните, для каждого вопроса должна быть своя тема.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, source777.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Ruby: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0485 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.