Menu
Coddy logo textTech

Аналитика слов

Часть раздела Логика и управление потоком путешествия по Ruby на Coddy — урок 54 из 56.

Самостоятельная задача, которая задействует строки, хеши, Hash.new(0) и методы Enumerable одновременно.

challenge icon

Задание

Средне

Прочитайте одну строку ввода — предложение. Проанализируйте его и выведите три строки:

  1. Количество уникальных слов (без учета регистра, с удаленной пунктуацией). Повторяющиеся слова считаются один раз.
  2. Повторяющиеся слова (те, которые встречаются более одного раза), отсортированные по алфавиту и разделенные , . Если таких слов нет, выведите (none).
  3. Слова-палиндромы (слова, которые читаются одинаково слева направо и справа налево), длиной ≥ 2, отсортированные по алфавиту и разделенные , . Если таких слов нет, выведите (none).

Удалите символы .,!?:;"() из каждого слова перед обработкой. Приведите все к нижнему регистру для сравнения.

Для входных данных Madam saw a racecar. Dad said hello hello to mom. вывод будет следующим:

9
hello
dad, madam, mom, racecar

Попробуйте сами

input = gets.chomp

# TODO: разделить, удалить пунктуацию, привести к нижнему регистру, затем вывести:
#   количество уникальных слов, повторяющиеся слова, палиндромы (длина >= 2)
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Логика и управление потоком