Menu
CoddyTech

Analisis Kata

Termasuk bagian Logika dan Alur dalam perjalanan Ruby di Coddy. Pelajaran 54 dari 56.

Tantangan mandiri yang menguji pemahamanmu tentang string, hash, Hash.new(0), dan method Enumerable sekaligus.

challenge icon

Tantangan

Sedang

Baca satu baris input, yaitu sebuah kalimat. Analisis dan cetak tiga baris:

  1. Jumlah kata unik (tanpa membedakan huruf besar dan kecil, dengan tanda baca dihapus). Kata yang berulang tetap dihitung satu kali.
  2. Kata-kata yang berulang (muncul lebih dari satu kali), diurutkan menurut abjad, lalu digabung dengan , . Jika tidak ada, cetak (none).
  3. Kata-kata palindrom, yaitu kata yang dibaca sama dari depan maupun belakang, dengan panjang ≥ 2, diurutkan menurut abjad, lalu digabung dengan , . Jika tidak ada, cetak (none).

Hapus karakter .,!?:;"() dari setiap kata sebelum memprosesnya. Ubah semuanya menjadi huruf kecil untuk perbandingan.

Untuk input Madam saw a racecar. Dad said hello hello to mom., output-nya adalah:

9
hello
dad, madam, mom, racecar

Coba sendiri

input = gets.chomp

# TODO: pisahkan, hapus tanda baca, ubah menjadi huruf kecil, lalu cetak:
#   jumlah kata unik, kata yang berulang, palindrom (panjang >= 2)
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler Ruby online