Eine Liste mit Zufallszahlen erzeugen

Hin und wieder ist es nötig eine Liste mit Zufalszahlen zu erzeugen. Unser heutiges Code-Snippet zeigt ein paar Varianten wie man diese erzeugen kann.

Beispiel 1:
n.times.inject([]) {|r,n| v = rand(max) until v and not r.include? v; r << v}
#=> [1, 0, 7, 6, 3]

Beispiel 2:

(1..5).inject([]) do |r,n|
    v = rand(max)
    redo if r.include? v
    r << v
end

Beispiel 3:

5.times.inject([]) {|r,n| v = rand(max) while v.nil? or r.include? v; r << v}

Eingestellt am 01.09.2009 um 07:00

Kategorie: Tutorials

Be Sociable, Share!

Kommentare für diesen Artikel wurden geschlossen.

Suchen auf rubyonrails.de

Aktuelle Rails Version + Abhängigkeiten:

Gem rails-3.0.0
actionmailer (= 3.0.0, runtime)
actionpack (= 3.0.0, runtime)
activerecord (= 3.0.0, runtime)
activeresource (= 3.0.0, runtime)
activesupport (= 3.0.0, runtime)
bundler (~> 1.0.0, runtime)
railties (= 3.0.0, runtime)

Rails auf Rubyforge
Rails auf Github