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 O’Reilly online learning.
O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.