Menu
Coddy logo textTech

Analiza słów

Część sekcji Logika i przepływ programu ścieżki Ruby w Coddy. Lekcja 54 z 56.

Samodzielne wyzwanie, które jednocześnie wykorzystuje ciągi znaków, hasze, Hash.new(0) i metody Enumerable.

challenge icon

Wyzwanie

Średni

Wczytaj jeden wiersz danych wejściowych — zdanie. Przeanalizuj je i wypisz trzy wiersze:

  1. Liczbę unikalnych słów (bez rozróżniania wielkości liter, po usunięciu znaków interpunkcyjnych). Powtórzone słowa liczą się tylko raz.
  2. Powtórzone słowa (te, które występują więcej niż raz), posortowane alfabetycznie i połączone za pomocą , . Jeśli ich nie ma, wypisz (none).
  3. Słowa-palindromy, czyli takie, które czytane od przodu i od tyłu brzmią tak samo, o długości ≥ 2, posortowane alfabetycznie i połączone za pomocą , . Jeśli ich nie ma, wypisz (none).

Przed przetwarzaniem usuń z każdego słowa znaki .,!?:;"(). Przy porównywaniu zamień wszystkie litery na małe.

Dla danych wejściowych Madam saw a racecar. Dad said hello hello to mom. wynikiem jest:

9
hello
dad, madam, mom, racecar

Spróbuj swoich sił

input = gets.chomp

# TODO: podziel, usuń interpunkcję, zamień na małe litery, a następnie wypisz:
#   liczbę unikalnych słów, powtarzające się słowa, palindromy (długość >= 2)
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Logika i przepływ programu

Poćwicz samodzielnie: Kompilator Ruby online