2.5. Generowanie liczb pseudolosowych
Problem
Chcemy generować liczby pseudolosowe, wybierać losowo elementy z pewnej struktury, a także generować w sposób powtarzalny takie same ciągi liczb „losowych” na potrzeby testowania aplikacji.
Rozwiązanie
Metoda Kernel#rand
wywołana bez argumentów zwraca (w postaci zmiennopozycyjnej) losową liczbę o rozkładzie jednostajnym z zakresu od 0 do 1.
rand # => 0.517297883846589 rand # => 0.946962603814814
Gdy wywołamy tę metodę z liczbą całkowitą n
jako pojedynczym argumentem, otrzymamy w wyniku losową liczbę całkowitą z zakresu od 0
do n-1
.
rand(5) # => 0 rand(5) # => 4 rand(5) # => 3 rand(1000) # => 39
Dyskusja
Wywoływanie metody Kernel#rand
z pojedynczym argumentem jest użytecznym sposobem ...
Get Ruby. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.