Mahali pa kuanzia
Soma kuhusu kizalishi cha nambari za bahati nasibu ni nini: vizalishi vya maunzi, vya nasibu bandia na vile vilivyo salama kwa njia ya kriptografia, kwa nini nambari hujirudia na kile ambacho kivinjari hutoa. Unapohitaji nambari badala ya maelezo, kizalishi cha nambari za bahati nasibu huzizalisha kwenye kivinjari chako katika masafa yoyote, zikiwa na au bila marudio.
Pale ambapo vizalishi hufeli kimyakimya
Chanzo chenye nguvu cha nasibu ni nusu tu ya kazi. Nusu nyingine ni kulinganisha thamani zake ghafi na masafa yako, na hapo ndipo vizalishi vingi vya kutengenezwa kienyeji vinapofeli. Kuchukua thamani kwa baki ya mgawanyiko (modulo) kulingana na ukubwa wa masafa ni mbinu ya kawaida inayojitokeza kwanza, lakini ina upendeleo wa siri: isipokuwa kama ukubwa wa masafa unagawanya nafasi ya matokeo ya chanzo sawasawa, nambari za chini kabisa katika masafa hujitokeza mara nyingi zaidi kuliko nyingine. Kasoro hiyo inaitwa upendeleo wa modulo (modulo bias). Suluhisho moja ni sampuli ya kukataliwa (rejection sampling): tupa thamani zinazoangukia kwenye mkia usio sawa na uchague tena. Kizalishi chetu hufanya hivyo, kwa hivyo kila nambari katika masafa yako ina nafasi sawa katika kila droo.
Mjadala huohuo huondoa njia za mkato ambazo watu huchukua kwanza. Math.random() haiahidi chochote kuhusu usalama, na fomula za lahajedwali kama vile RAND() na RANDBETWEEN() ni za kundi hilohilo: zinafaa kwa mchanganyiko wa kawaida tu, lakini hazifai kwa chochote ambacho mtu anaweza kukipinga.
Nambari, orodha na kete
Kizalishi cha nambari za bahati nasibu hutoa nambari kutoka masafa unayoweka. Chombo cha chagua nasibu hufanya kazi kwenye orodha unayobandika — majina, maingizo, machaguo — ili kamwe usilazimike kuoanisha nambari na safu kwa mikono. Kwa michezo ya mezani kizalishi cha kete hutupa kete na kujumlisha matokeo, na kwa uchaguzi kati ya mambo mawili tupa sarafu inatosha. Wakati unasibu unahitajika kulinda kitu badala ya kuamua kitu, tumia jenereta ya nenosiri thabiti. Zote hutumia chanzo kilekile kilicho salama kwa njia ya kriptografia kwenye kivinjari chako.