Menu
Coddy logo textTech

Récapitulatif - Compteur de fréquence

Fait partie de la section Logique et Flux du Journey Ruby de Coddy. Leçon 37 sur 56.

Rassemblez les hachages avec des valeurs par défaut, l'itération et le tri des chapitres précédents en un défi classique : un rapport de fréquence de mots.

challenge icon

Défi

Moyen

Lisez une seule ligne d'entrée, une phrase. Construisez un Hash.new(0) associant chaque mot (séparé par des espaces, mis en minuscules) à sa fréquence.

Ensuite, affichez :

  1. Le nombre total de mots uniques
  2. Une ligne par mot par ordre décroissant de fréquence (les égalités sont départagées par ordre alphabétique du mot) dans ce format : <word>: <count>

Pour l'entrée the quick brown fox jumps over the lazy dog the dog, la sortie est :

8
the: 3
dog: 2
brown: 1
fox: 1
jumps: 1
lazy: 1
over: 1
quick: 1

Essayez vous-même

input = gets.chomp

# TODO: construire un Hash.new(0) de mot → nombre, puis afficher :
#   1) le nombre de mots uniques
#   2) les entrées triées par nombre décroissant, les égalités par mot croissant

Toutes les leçons de Logique et Flux

Entraînez-vous par vous-même : Compilateur Ruby en ligne