Hvar á að byrja
Lestu hvað slembitöluvél er: vélbúnaðar-, gervislembi- og dulritunarfræðilega örugga slembigjafa, hvers vegna tölur endurtaka sig og hvað vafrinn hefur upp á að bjóða. Þegar þú þarft tölur frekar en útskýringu dregur slembitöluvélin þær í vafranum þínum á hvaða bili sem er, með eða án endurtekninga.
Hvar slembigjafar bregðast í kyrrþey
Örugg uppspretta slembi er aðeins hálfur sigurinn. Hinn helmingurinn er að varpa hráum gildum yfir á bilið þitt, og það er einmitt þar sem margir heimatilbúnir slembigjafar bregðast. Að taka leifina (modulo) miðað við stærð bilsins er augljósa leiðin, en hún veldur lúmskri bjögun: nema stærð bilsins gangi jafnt upp í mögulegum gildum uppsprettunnar, koma lægstu tölurnar á bilinu aðeins oftar upp en hinar. Gallinn kallast leifarbjögun (modulo bias). Ein leið er höfnunarúrtak (rejection sampling): henda gildum sem lenda í ójöfnu leifinni og draga aftur. Slembigjafinn okkar gerir þetta, þannig að hver tala á bilinu þínu hefur nákvæmlega sömu möguleika í hverjum útdrætti.
Sömu rök útiloka flýtileiðirnar sem fólk grípur fyrst til. Math.random() lofar engu um öryggi, og töflureikniföll á borð við RAND() og RANDBETWEEN() tilheyra sama flokki: ágæt fyrir lauslega stokkun, en óhæf fyrir hvaðeina sem einhver kynni að vefengja.
Tölur, listar og teningar
Slembitöluvél skilar tölum af bili sem þú ákveður. Slembival vinnur með lista sem þú límir inn — nöfn, þátttakendur, valkosti — svo þú þurfir aldrei að tengja tölur við línur handvirkt. Fyrir borðspil kastar teningakastið teningum og leggur saman heildartöluna, og til að velja á milli tveggja kosta dugir að kasta peningi. Þegar slembi á að vernda eitthvað frekar en að taka ákvörðun skaltu nota örugga lykilorðavél. Öll nýta þau sömu dulritunarfræðilega öruggu uppsprettuna í vafranum þínum.