Eigentlich wollte ich ja gerade in einem Kommentar zum "Ruby Cookbook" schreiben, dass ich Ruby überwiegend zur Lösung real existierender Probleme einsetze...
lassen wir das mal lieber sein.
Nettes Thema "Generieren von Zufallsworten". Ich hab noch zwei Varianten, die leider etwas schneller sind.
1. Variante:
def randstring(n)
('A'*n).split('').collect{|c|rand(26).times{c.succ!};c}.join
end
2. Variante:
def randstring(n)
('A'*n).split('').collect{|c|(c[0]+rand(26)).chr}.join
end
Kommentar schreiben
Kommentare
Eigentlich wollte ich ja gerade in einem Kommentar zum "Ruby Cookbook" schreiben, dass ich Ruby überwiegend zur Lösung real existierender Probleme einsetze... lassen wir das mal lieber sein. Nettes Thema "Generieren von Zufallsworten". Ich hab noch zwei Varianten, die leider etwas schneller sind. 1. Variante: def randstring(n) ('A'*n).split('').collect{|c|rand(26).times{c.succ!};c}.join end 2. Variante: def randstring(n) ('A'*n).split('').collect{|c|(c[0]+rand(26)).chr}.join end
... noch 'ne Variante: def randstring(n) (1..n).collect{|c|(?A+rand(26)).chr}.join end
aber die sind nicht so schön doof wie meine variante ;)