L'objectif est d’abord de demander le nombres d'utilisateurs puis d'y exercer un trie sur le nombres d'utilisateurs qui ont le même nom.
Résultat de la sortie finale :
nombres d'utilisateurs : 4 entrer l'utilisateur : bruno entrer l'utilisateur : luc entrer l’utilisateur : allan entrer l'utilisateur : bruno {"bruno"=>2, "luc"=>1, "allan"=>1}
Code source :
#!/usr/bin/ruby -w print "nombres d'utilisateurs : " nb_utilisateurs = gets.strip liste = Array.new() utilisateurs = Hash.new() #1.upto(nb_utilisateurs.to_i) do |u|w # print "entrer l'utilisateur : " # liste << gets.strip #end # Ou au de manière concis 1.upto(nb_utilisateurs.to_i) { |u| print "entrer l'utilisateur : "; liste << gets.strip } #liste.each do |i| # if utilisateurs[i] then # utilisateurs[i] += 1 # else # utilisateurs[i] = 1 # end #end # Ou de manière concis liste.each { |i| (utilisateurs[i])? utilisateurs[i] += 1 : utilisateurs[i] = 1 } puts utilisateurs