Recepti za jedi.  Psihologija.  Korekcija figure

Bot za naključna števila. Generator naključnih števil za loterijo

Nov generator naključnih števil brez ponavljanj. Ima posodobljen algoritem za generiranje številk. Ta generator odpravlja možnost ponavljanja številk. Generator naključnih števil vam omogoča, da posamezna števila izključite iz rezultata.

Če želite ustvariti številko, izberite izvorno številko. Izberite končno številko. Določite število številk, ki jih želite ustvariti. Poleg tega lahko določite številke, ki naj bodo prezrte.

Ta generator številk uporablja zapleten algoritem. To zagotavlja, da je vsako število resnično naključno.

Naključno število

Zakaj ga potrebujemo? Na primer za slepo izbiro. To je uporabno pri določanju zmagovalca loterije. Pri ugotavljanju zmagovalca natečaja. Pri igranju loterije. Ko želite dobiti kombinacijo številk povsem po naključju.

To je univerzalni generator naključnih števil. Primeren je za vsako potrebo po pridobitvi naključnega števila. Vse prejete številke so popolnoma naključne. Navesti morate le izvorne podatke. Ostalo bo namesto vas naredil naš RNG.
Dobro je imeti tak naključni generator vedno pri roki. Z lahkoto lahko igrate loterijo. Biti prepričan, da so bile te številke pridobljene naključno.

Generator naključnih števil za loterijo

Želite dobiti naključna števila brez ponavljanja. Prav tako ne potrebujete nekaterih številk. Ker po vašem mnenju zagotovo ne bodo izpadli. Z lahkoto lahko konfigurirate način našega generatorja številk, ki ga potrebujete. In dal vam bo samo uporabne kombinacije številk. Ne potrebujete več veliko različnih generatorjev. Ta RNG je univerzalen. Ta generator je enostavno prilagodljiv vašim potrebam. Generator nima omejitev glede števila in obsega številk. To ustvarjanje se izvede na strani strežnika in ne na strani vašega brskalnika. Izločili smo vse dejavnike, ki bi lahko vplivali na rezultat naključnega izbora.

Nov generator RNG

Naš naključni generator večkrat premeša številke. Ne ustvarjamo le naključnih števil. Najprej premešamo vse številke, med katerimi moramo izbrati. To se naredi večkrat. In šele nato znova naključno izberemo dano število številk. Ta pristop k ustvarjanju naključnih števil zagotavlja, da je izbira naključna.

Pomagajte storitvi z enim klikom: Povejte svojim prijateljem o generatorju!

Spletni generator številk v 1 kliku

Generator naključnih števil, ki je predstavljen na naši spletni strani, je zelo priročen. Na primer, lahko se uporablja v nagradnih igrah in loterijah za določitev zmagovalca. Zmagovalci so določeni na ta način: program ustvari eno ali več številk v poljubnem območju, ki ga določite. Lažne rezultate je mogoče takoj izključiti. In zahvaljujoč temu se zmagovalec določi s pošteno izbiro.

Včasih je treba naenkrat pridobiti določeno število naključnih števil. Na primer, želite izpolniti srečko "4 od 35" in zaupati naključju. Lahko preverite: če kovanec vržete 32-krat, kakšna je verjetnost, da se bo zaporedoma pojavilo 10 obrnjenih (glave/repi so lahko dodeljene številki 0 in 1)?

Spletno video navodilo za naključno število - naključni merilnik

Naš generator številk je zelo enostaven za uporabo. Ne zahteva prenosa programa na vaš računalnik – lahko ga uporabljate na spletu. Za pridobitev števila, ki ga potrebujete, morate nastaviti obseg naključnih števil, količino in po želji ločilo števil ter odpraviti ponavljanja.

Če želite ustvariti naključna števila v določenem frekvenčnem območju:

  • Izberite obseg;
  • Določite število naključnih števil;
  • Funkcija “Ločilo številk” služi za lepoto in udobje njihovega prikaza;
  • Po potrebi omogočite/onemogočite ponovitve s potrditvenim poljem;
  • Kliknite gumb "Ustvari".

Posledično boste prejeli naključna števila v danem obsegu. Rezultat generatorja števil lahko kopirate ali pošljete po e-pošti. Najbolje bi bilo narediti posnetek zaslona ali video tega procesa generiranja. Naš randomizator bo rešil vse vaše težave!


Upoštevajte, da bi bila krivulja gostote porazdelitve naključnih števil v idealnem primeru videti, kot je prikazano na sl. 22.3. To pomeni, da v idealnem primeru vsak interval vsebuje enako število točk: N jaz = N/k , Kje N skupno število točk, kštevilo intervalov, jaz= 1, , k .

riž. 22.3. Frekvenčni diagram naključnih števil,
teoretično generiran z idealnim generatorjem

Ne smemo pozabiti, da je generiranje poljubnega naključnega števila sestavljeno iz dveh stopenj:

  • generiranje normaliziranega naključnega števila (to je enakomerno porazdeljenega od 0 do 1);
  • normalizirana pretvorba naključnih števil r jaz na naključna števila x jaz, ki se porazdelijo po (poljubnem) zakonu porazdelitve, ki ga zahteva uporabnik oziroma v zahtevanem intervalu.

Generatorji naključnih števil glede na način pridobivanja števil delimo na:

  • fizično;
  • tabelarni;
  • algoritemsko.

Fizični RNG

Primer fizičnega RNG je lahko: kovanec (»glave« 1, »repi« 0); kocke; boben s puščico, razdeljen na sektorje s številkami; strojni generator šuma (HS), ki uporablja hrupno toplotno napravo, na primer tranzistor (sl. 22.422.5).

riž. 22.4. Shema strojne metode za generiranje naključnih števil
riž. 22.5. Diagram pridobivanja naključnih števil s strojno metodo
Naloga "Ustvarjanje naključnih števil z uporabo kovanca"

S kovancem ustvarite naključno trimestno število, enakomerno porazdeljeno v območju od 0 do 1. Natančnost do treh decimalnih mest.

Prvi način za rešitev problema
Vrzite kovanec 9-krat in če kovanec pade na glave, zapišite "0", če pade na glave, zapišite "1". Recimo, da smo kot rezultat poskusa prejeli naključno zaporedje 100110100.

Narišite interval od 0 do 1. Berite števila v zaporedju od leve proti desni, razdelite interval na pol in vsakič izberite enega od delov naslednjega intervala (če pride 0, potem levo, če je 1 pride gor, nato pravi). Tako lahko pridete do katere koli točke v intervalu tako natančno, kot želite.

Torej, 1 : interval je razdeljen na pol in , izbrana je desna polovica, interval je zožen: . Naslednja številka 0 : interval je razdeljen na pol in , izbrana je leva polovica, interval je zožen: . Naslednja številka 0 : interval je razdeljen na pol in , izbrana je leva polovica, interval je zožen: . Naslednja številka 1 : interval je razdeljen na pol in , izbrana je desna polovica, interval je zožen: .

Glede na pogoj točnosti problema je bila najdena rešitev: to je poljubno število iz intervala, na primer 0,625.

Načeloma velja, da če se lotimo strogega pristopa, potem je treba delitev intervalov nadaljevati, dokler se leva in desna meja najdenega intervala SOVPADATA z natančnostjo tretje decimalke. To pomeni, da se z vidika natančnosti generirano število ne bo več razlikovalo od nobenega števila iz intervala, v katerem se nahaja.

Drugi način za rešitev problema
Razdelimo nastalo binarno zaporedje 100110100 na triade: 100, 110, 100. Po pretvorbi teh binarnih števil v decimalna števila dobimo: 4, 6, 4. Če spredaj zamenjamo “0.” dobimo: 0,464. Ta metoda lahko proizvede samo številke od 0,000 do 0,777 (ker je največ, kar je mogoče "iztisniti" iz treh binarnih števk, 111 2 = 7 8), kar pomeni, da so te številke dejansko predstavljene v oktalnem številskem sistemu. Za prevod osmiškoštevilke v decimalno izvedimo predstavitev:
0,464 8 = 4 8 1 + 6 8 2 + 4 8 3 = 0,6015625 10 = 0,602 10.
Zahtevano število je torej: 0,602.

Tabelarni RNG

Tabelarni RNG kot vir naključnih števil uporabljajo posebej sestavljene tabele, ki vsebujejo preverjena nekorelirana števila, to je na noben način medsebojno odvisna števila. V tabeli 22.1 prikazuje majhen fragment takšne tabele. S premikanjem tabele od leve proti desni od zgoraj navzdol lahko dobite naključna števila, enakomerno porazdeljena od 0 do 1 z zahtevanim številom decimalnih mest (v našem primeru uporabljamo tri decimalna mesta za vsako število). Ker številke v tabeli niso odvisne ena od druge, lahko po tabeli hodimo na različne načine, na primer od zgoraj navzdol ali od desne proti levi ali pa recimo izbiramo števila, ki so na sodih mestih.

Tabela 22.1.
Naključna števila. Enakomerno
naključna števila, porazdeljena od 0 do 1
Naključna števila Enakomerno porazdeljeno
0 do 1 naključna števila
9 2 9 2 0 4 2 6 0.929
9 5 7 3 4 9 0 3 0.204
5 9 1 6 6 5 7 6 0.269
… …

Dostojanstvo ta metoda je, da proizvaja resnično naključna števila, saj tabela vsebuje preverjena nekorelirana števila. Slabosti metode: shranjevanje velikega števila števk zahteva veliko pomnilnika; Takšne tabele je zelo težko generirati in preverjati, ponavljanja pri uporabi tabele ne zagotavljajo več naključnosti številčnega zaporedja in s tem zanesljivosti rezultata.

Obstaja tabela, ki vsebuje 500 popolnoma naključnih preverjenih števil (povzeto iz knjige I. G. Venetsky, V. I. Venetskaya "Osnovni matematični in statistični koncepti in formule v ekonomski analizi").

Algoritemski RNG

Številke, ki jih generirajo ti RNG, so vedno psevdo-naključne (ali kvazi-naključne), kar pomeni, da je vsako naslednje generirano število odvisno od prejšnjega:

r jaz + 1 = f(r jaz) .

Zaporedja, sestavljena iz takšnih števil, tvorijo zanke, to pomeni, da nujno obstaja cikel, ki se ponavlja neskončno velikokrat. Ponavljajoče se cikle imenujemo obdobja.

Prednost teh RNG je njihova hitrost; Generatorji praktično ne potrebujejo pomnilniških virov in so kompaktni. Slabosti: številk ni mogoče v celoti imenovati naključnih, saj obstaja med njimi odvisnost, pa tudi prisotnost obdobij v zaporedju kvazi-naključnih števil.

Razmislimo o več algoritemskih metodah za pridobivanje RNG:

  • metoda srednjih kvadratov;
  • metoda srednjih izdelkov;
  • metoda mešanja;
  • linearna kongruentna metoda.

Metoda srednjega kvadrata

Obstaja neka štirimestna številka R 0 . To število se kvadrira in vnese R 1. Naprej od R 1 vzame srednjo (štiri srednje števke) novo naključno številko in jo zapiše R 0 . Nato se postopek ponovi (glej sliko 22.6). Upoštevajte, da v resnici kot naključno število ne morate vzeti ghij, A 0.ghij z ničlo in decimalno vejico na levi strani. To dejstvo se odraža kot na sl. 22.6 in na naslednjih podobnih slikah.

riž. 22.6. Shema metode srednjih kvadratov

Slabosti metode: 1) če pri neki iteraciji število R 0 postane enaka nič, potem generator degenerira, zato je pomembna pravilna izbira začetne vrednosti R 0 ; 2) generator bo ponovil zaporedje M n koraki (v najboljši scenarij), Kje nštevka številke R 0 , M osnova številskega sistema.

Na primer na sl. 22,6: če št R 0 bo predstavljena v dvojiškem številskem sistemu, potem se bo zaporedje psevdonaključnih števil ponovilo v 2 4 = 16 korakih. Upoštevajte, da lahko do ponovitve zaporedja pride prej, če je štartna številka izbrana slabo.

Zgoraj opisano metodo je predlagal John von Neumann in sega v leto 1946. Ker se je ta metoda izkazala za nezanesljivo, so jo hitro opustili.

Metoda srednjega izdelka

številka R 0 pomnoženo z R 1, iz dobljenega rezultata R 2 sredina je izvlečena R 2 * (to je še eno naključno število) in pomnoženo z R 1. Vsa naslednja naključna števila se izračunajo po tej shemi (glej sliko 22.7).

riž. 22.7. Shema metode medianih produktov

Metoda mešanja

Metoda shuffle uporablja operacije za ciklično premikanje vsebine celice levo in desno. Ideja metode je naslednja. Celica naj shrani začetno številko R 0 . S cikličnim premikanjem vsebine celice v levo za 1/4 dolžine celice dobimo novo številko R 0 * . Na enak način krožite vsebino celice R 0 v desno za 1/4 dolžine celice, dobimo drugo številko R 0**. Vsota števil R 0* in R 0** daje novo naključno število R 1. Nadalje R 1 je vpisan R 0 in celotno zaporedje operacij se ponovi (glej sliko 22.8).


riž. 22.8. Diagram metode mešanja

Upoštevajte, da je število, ki izhaja iz seštevka R 0* in R 0 **, se morda ne prilega v celoti v celico R 1. V tem primeru je treba iz dobljenega števila zavreči dodatne števke. Naj to razložimo na sl. 22.8, kjer so vse celice predstavljene z osmimi binarnimi ciframi. Pustiti R 0 * = 10010001 2 = 145 10 , R 0 ** = 10100001 2 = 161 10 , Potem R 0 * + R 0 ** = 100110010 2 = 306 10 . Kot lahko vidite, številka 306 zavzema 9 števk (v binarnem številskem sistemu) in celica R 1 (enako kot R 0) lahko vsebuje največ 8 bitov. Zato, preden vnesete vrednost v R 1, je potrebno odstraniti en "odvečni", skrajni levi bit iz števila 306, kar ima za posledico R 1 ne bo več šel v 306, ampak v 00110010 2 = 50 10 . Upoštevajte tudi, da se v jezikih, kot je Pascal, "obrezovanje" dodatnih bitov, ko se celica preliva, izvede samodejno v skladu z določeno vrsto spremenljivke.

Linearna kongruentna metoda

Linearna kongruentna metoda je eden najpreprostejših in trenutno najpogosteje uporabljenih postopkov za simulacijo naključnih števil. Ta metoda uporablja mod( x, l), ki vrne ostanek, ko je prvi argument deljen z drugim. Vsako naslednje naključno število se izračuna na podlagi prejšnjega naključnega števila po naslednji formuli:

r jaz+ 1 = mod( k · r jaz + b, M) .

Zaporedje naključnih števil, pridobljenih s to formulo, se imenuje linearno skladno zaporedje. Mnogi avtorji imenujejo linearno skladno zaporedje ko b = 0 multiplikativna kongruentna metoda, in kdaj b ≠ 0 — mešana kongruentna metoda.

Za kakovosten generator je treba izbrati ustrezne koeficiente. Potrebno je, da število M je bil precej velik, saj obdobje ne more imeti več M elementi. Po drugi strani pa je deljenje, uporabljeno pri tej metodi, precej počasna operacija, zato bi bila za binarni računalnik logična izbira M = 2 N, saj je v tem primeru iskanje ostanka deljenja v računalniku zmanjšano na binarno logično operacijo "IN". Pogosta je tudi izbira največjega praštevila M, manj kot 2 N: v strokovni literaturi je dokazano, da so v tem primeru nižje števke dobljenega naključnega števila r jaz+ 1 se obnašajo prav tako naključno kot starejši, kar pozitivno vpliva na celotno zaporedje naključnih števil kot celoto. Na primer, eden od Mersennova števila, enako 2 31 1, in tako, M= 2 31 1 .

Ena od zahtev za linearna kongruentna zaporedja je, da je dolžina obdobja čim daljša. Dolžina obdobja je odvisna od vrednosti M , k in b. Izrek, ki ga predstavljamo spodaj, nam omogoča, da ugotovimo, ali je mogoče doseči obdobje največje dolžine za določene vrednosti M , k in b .

Izrek. Linearno skladno zaporedje, definirano s števili M , k , b in r 0, ima obdobje dolžine Mče in samo če:

  • številke b in M razmeroma preprosto;
  • k 1-krat str za vsako prime str, ki je delitelj M ;
  • k 1 je večkratnik 4, če M večkratnik 4.

Nazadnje zaključimo z nekaj primeri uporabe linearne kongruentne metode za ustvarjanje naključnih števil.

Ugotovljeno je bilo, da se niz psevdonaključnih števil, generiranih na podlagi podatkov iz primera 1, ponovi vsak M/4 številke. številka q je nastavljen poljubno pred začetkom izračunov, vendar se je treba zavedati, da niz na splošno daje vtis naključnega k(in zato q). Rezultat je mogoče nekoliko izboljšati, če bčudno in k= 1 + 4 · q v tem primeru se bo vrstica ponovila vsakih Mštevilke. Po dolgem iskanju k raziskovalci so se ustalili pri vrednosti 69069 in 71365.

Generator naključnih števil, ki uporablja podatke iz primera 2, bo proizvedel naključna števila, ki se ne ponavljajo, s periodo 7 milijonov.

Multiplikativno metodo za generiranje psevdonaključnih števil je leta 1949 predlagal D. H. Lehmer.

Preverjanje kakovosti generatorja

Od kakovosti RNG je odvisna kakovost celotnega sistema in točnost rezultatov. Zato mora naključno zaporedje, ki ga ustvari RNG, izpolnjevati številne kriterije.

Opravljeni pregledi so dveh vrst:

  • preverja enakomernost porazdelitve;
  • testi statistične neodvisnosti.

Preverja enakomernost porazdelitve

1) RNG mora proizvesti blizu naslednjih vrednosti statističnih parametrov, značilnih za enoten naključni zakon:

2) Frekvenčni test

Frekvenčni test vam omogoča, da ugotovite, koliko številk je znotraj intervala (m r – σ r ; m r + σ r) , to je (0,5 0,2887; 0,5 + 0,2887) ali na koncu (0,2113; 0,7887). Ker je 0,7887 0,2113 = 0,5774, sklepamo, da mora v dobrem RNG približno 57,7 % vseh izžrebanih naključnih števil soditi v ta interval (glej sliko 22.9).

riž. 22.9. Frekvenčni diagram idealnega RNG
v primeru preverjanja za frekvenčni test

Upoštevati je treba tudi, da mora biti število števil, ki spadajo v interval (0; 0,5), približno enako številu števil, ki spadajo v interval (0,5; 1).

3) Hi-kvadrat test

Hi-kvadrat test (χ 2 test) je eden najbolj znanih statističnih testov; je glavna metoda, ki se uporablja v kombinaciji z drugimi merili. Hi-kvadrat test je leta 1900 predlagal Karl Pearson. Njegovo izjemno delo velja za temelj sodobne matematične statistike.

V našem primeru nam bo testiranje z uporabo kriterija hi-kvadrat omogočilo ugotoviti, koliko je resnično RNG je blizu merila uspešnosti RNG, to je, ali izpolnjuje zahtevo po enotni distribuciji ali ne.

Frekvenčni diagram referenca RNG je prikazan na sl. 22.10. Ker je porazdelitveni zakon referenčnega RNG enoten, potem (teoretična) verjetnost str jaz pridobivanje številk jaz th interval (vsi ti intervali k) je enako str jaz = 1/k . In tako v vsakem od k intervali bodo udarili gladka Avtor: str jaz · N številke ( N skupno število ustvarjenih številk).

riž. 22.10. Frekvenčni diagram referenčnega RNG

Pravi RNG bo ustvaril številke, porazdeljene (in ne nujno enakomerno!) čez k intervale in vsak interval bo vseboval n jazštevilke (skupaj n 1 + n 2 + + n k = N ). Kako lahko ugotovimo, kako dober je RNG, ki ga testiramo, in kako blizu je referenčnemu? Povsem logično je upoštevati kvadrat razlike med dobljenim številom števil n jaz in "referenca" str jaz · N . Seštejmo jih in rezultat je:

χ 2 exp. = ( n 1 str 1 · N) 2 + (n 2 str 2 · N) 2 + + ( n k – str k · N) 2 .

Iz te formule sledi, da manjša kot je razlika v vsakem od členov (in torej manjša kot je vrednost χ 2 exp.), močnejši je zakon porazdelitve naključnih števil, ki jih generira realni RNG, enakomeren.

V prejšnjem izrazu je vsakemu izmed izrazov dodeljena enaka utež (enaka 1), kar morda dejansko ne drži; zato je za statistiko hi-kvadrat potrebno normalizirati vsakega jaz th izraz, ki ga deli s str jaz · N :

Za konec zapišimo nastali izraz bolj strnjeno in ga poenostavimo:

Dobili smo vrednost testa hi-kvadrat za eksperimentalno podatke.

V tabeli 22.2 so podani teoretično vrednosti hi-kvadrat (χ 2 teoretično), kjer ν = N 1 je število prostostnih stopinj, str to je uporabniško določena stopnja zaupanja, ki kaže, koliko naj bi RNG izpolnjeval zahteve enotne porazdelitve, ali str — je verjetnost, da eksperimentalna vrednost χ 2 exp. bo manjši od tabeliranega (teoretičnega) χ 2 teoretičnega. ali enaka temu.

Tabela 22.2.
Nekaj ​​odstotnih točk porazdelitve χ 2
p = 1 % p = 5 % p = 25 % p = 50 % p = 75 % p = 95 % p = 99 %
ν = 1 0.00016 0.00393 0.1015 0.4549 1.323 3.841 6.635
ν = 2 0.02010 0.1026 0.5754 1.386 2.773 5.991 9.210
ν = 3 0.1148 0.3518 1.213 2.366 4.108 7.815 11.34
ν = 4 0.2971 0.7107 1.923 3.357 5.385 9.488 13.28
ν = 5 0.5543 1.1455 2.675 4.351 6.626 11.07 15.09
ν = 6 0.8721 1.635 3.455 5.348 7.841 12.59 16.81
ν = 7 1.239 2.167 4.255 6.346 9.037 14.07 18.48
ν = 8 1.646 2.733 5.071 7.344 10.22 15.51 20.09
ν = 9 2.088 3.325 5.899 8.343 11.39 16.92 21.67
ν = 10 2.558 3.940 6.737 9.342 12.55 18.31 23.21
ν = 11 3.053 4.575 7.584 10.34 13.70 19.68 24.72
ν = 12 3.571 5.226 8.438 11.34 14.85 21.03 26.22
ν = 15 5.229 7.261 11.04 14.34 18.25 25.00 30.58
ν = 20 8.260 10.85 15.45 19.34 23.83 31.41 37.57
ν = 30 14.95 18.49 24.48 29.34 34.80 43.77 50.89
ν = 50 29.71 34.76 42.94 49.33 56.33 67.50 76.15
ν > 30 ν + sqrt(2 ν ) · x str+ 2/3 · x 2 str 2/3 + O(1/sqrt( ν ))
x str = 2.33 1.64 0,674 0.00 0.674 1.64 2.33

Velja za sprejemljivo str od 10% do 90%.

Če je χ 2 exp. veliko več kot teorija χ 2. (to je str velik), potem generator ne zadovolji zahteva po enakomerni porazdelitvi, saj opazovane vrednosti n jaz predaleč od teoretičnega str jaz · N in jih ni mogoče šteti za naključne. Z drugimi besedami, vzpostavljen je tako velik interval zaupanja, da postanejo omejitve glede številk zelo ohlapne, zahteve glede številk postanejo šibke. V tem primeru bo opažena zelo velika absolutna napaka.

Tudi D. Knuth je v svoji knjigi "Umetnost programiranja" ugotovil, da ima χ 2 exp. za majhne na splošno tudi ni dobro, čeprav se to na prvi pogled zdi čudovito z vidika enotnosti. Dejansko vzemite vrsto števil 0,1, 0,2, 0,3, 0,4, 0,5, 0,6, 0,7, 0,8, 0,9, 0,1, 0,2, 0,3, 0,4, 0,5, 0,6, idealne so z vidika enotnosti in χ 2 exp. bo praktično nič, vendar jih verjetno ne boste prepoznali kot naključne.

Če je χ 2 exp. veliko manj kot teorija χ 2. (to je str majhen), nato generator ne zadovolji zahteva po naključni enakomerni porazdelitvi, saj opazovane vrednosti n jaz preveč blizu teoretičnemu str jaz · N in jih ni mogoče šteti za naključne.

Če pa je χ 2 exp. leži v določenem območju med dvema vrednostma χ 2 teor. , ki ustrezajo npr. str= 25 % in str= 50%, potem lahko domnevamo, da so vrednosti naključnih števil, ki jih ustvari senzor, popolnoma naključne.

Poleg tega se je treba zavedati, da vse vrednote str jaz · N mora biti dovolj velik, na primer več kot 5 (ugotovljeno empirično). Šele takrat (ob dovolj velikem statističnem vzorcu) lahko eksperimentalne pogoje štejemo za zadovoljive.

Torej, postopek preverjanja je naslednji.

Testi statistične neodvisnosti

1) Preverjanje pogostosti pojavljanja številk v zaporedju

Poglejmo si primer. Naključno število 0,2463389991 je sestavljeno iz števk 2463389991, število 0,5467766618 pa iz števk 5467766618. Če povežemo zaporedja števk, dobimo: 24633899915467766618.

Jasno je, da je teoretična verjetnost str jaz izguba jaz 3. številka (od 0 do 9) je enaka 0,1.

2) Preverjanje videza serije enakih številk

Označimo z n Lštevilo nizov enakih števk v vrstici dolžine L. Vse je treba preveriti L od 1 do m, Kje m to je število, ki ga določi uporabnik: največje število enakih števk v nizu.

V primeru “24633899915467766618” sta bili najdeni 2 seriji dolžine 2 (33 in 77), tj. n 2 = 2 in 2 seriji dolžine 3 (999 in 666), tj n 3 = 2 .

Verjetnost pojava serije dolžine L je enako: str L= 9 10 L (teoretično). To pomeni, da je verjetnost pojava serije, dolge en znak, enaka: str 1 = 0,9 (teoretično). Verjetnost, da se pojavi serija dveh znakov, je: str 2 = 0,09 (teoretično). Verjetnost, da se pojavi niz treh znakov, je: str 3 = 0,009 (teoretično).

Na primer, verjetnost pojava niza z enim znakom je str L= 0,9, saj je lahko samo en simbol od 10, skupaj pa je 9 simbolov (ničla ne šteje). In verjetnost, da se bosta v vrsti pojavila dva enaka simbola "XX", je 0,1 · 0,1 · 9, to je verjetnost 0,1, da se bo simbol "X" pojavil na prvem mestu, pomnožena z verjetnostjo 0,1, da isti simbol se bo pojavil na drugem mestu "X" in pomnožen s številom takšnih kombinacij 9.

Pogostost pojavljanja nizov se izračuna s formulo hi-kvadrat, o kateri smo prej razpravljali z uporabo vrednosti str L .

Opomba: Generator je mogoče preizkusiti večkrat, vendar testi niso popolni in ne zagotavljajo, da generator proizvaja naključna števila. Na primer, generator, ki proizvaja zaporedje 12345678912345, bo med testi veljal za idealnega, kar očitno ni povsem res.

Na koncu ugotavljamo, da je tretje poglavje Umetnosti programiranja Donalda E. Knutha (2. zvezek) v celoti posvečeno preučevanju naključnih števil. Preučuje različne metode za generiranje naključnih števil, statistične teste naključnosti in pretvorbo enakomerno porazdeljenih naključnih števil v druge vrste naključnih spremenljivk. Predstavitvi tega gradiva je namenjenih več kot dvesto strani.

V tem članku si bomo ogledali značilnosti algoritma generator naključnih števil v Excelu, na primerih pa si bomo pogledali, kako s funkcijama RAND in RANDBETWEEN v Excelu generiramo naključna števila, naključna števila z danim številom decimalnih mest, datume in ure.

Generator naključnih števil z uporabo funkcije RAND

Funkcija RAND je ena od dveh funkcij, posebej zasnovanih za generiranje naključnih števil v Excelu. Ta funkcija vrne naključno decimalno število (realno število) med 0 in 1.

RAND() je nestanovitna funkcija, kar pomeni, da se vsakokrat, ko je delovni list ovrednoten, ustvari novo naključno število. In to se zgodi vsakič, ko izvedete katero koli dejanje na delovnem listu, kot je posodabljanje formule (ne nujno formule RAND, katere koli druge formule na delovnem listu), urejanje celice ali vnašanje novih podatkov.

Funkcija RAND je na voljo v vseh različicah: Excel 2016, Excel 2013, Excel 2010, Excel 2007, Excel 2003.

Ker Excelova funkcija RAND nima argumentov, preprosto vnesete =RAND() v celico in nato kopirate formulo v toliko celic, kot želite:

Zdaj pa pojdimo še korak naprej in napišimo nekaj formul RAND za generiranje naključnih števil v skladu z določenimi pogoji.

Generator naključnih števil od nič do dane zgornje meje obsega

Če želite iti od nič do katere koli vrednosti N, večkrat izvedete funkcijo RAND z uporabo N:

Če želite na primer ustvariti zaporedje naključnih števil, večjih ali enakih 0, vendar manjših od 50, uporabite naslednjo formulo:

RAND()*50

Opomba: Vrednost zgornje meje ni nikoli vključena v vrnjeno naključno zaporedje. Na primer, če želite pridobiti naključna števila od 0 do 10, vključno z 10, je pravilna formula =RAND()*11.

Generator naključnih števil v območju

Ustvariti naključno število v območju, tj. naključno število med katerima koli številoma, ki ju določite, uporabite naslednjo formulo RAND:

RAND() * (B - A) + A

Kjer je A vrednost spodnje meje (najmanjše število) in B vrednost zgornje meje (največje število).

Na primer za naredite generator naključnih števil od 10 do 50, lahko uporabite naslednjo formulo:

RAND()*(50-10)+10

Opomba: Ta formula za generiranje naključnih števil ne bo nikoli vrnila števila, ki je enako največjemu številu v podanem obsegu (vrednost B).

Generator naključnih celih števil v Excelu

Če želite, da Excelova funkcija RAND ustvari naključna cela števila, vzemite eno od zgornjih formul in jo zavijte v funkcijo INTEGER.

Za prehod od 0 do 50:

CELO ŠTEVILO(RAND()*50)

Za ustvari naključna cela števila od 10 do 50:

CELO ŠTEVILO (RAND()*(50-10)+10)

Generator naključnih števil v Excelu - generiranje naključnih celih števil

Generator naključnih števil v Excelu v obsegu s funkcijo RANDBETWEEN

RANDBETWEEN je še ena funkcija v Excelu za ustvarjanje generator naključnih števil.. Vrne naključna cela števila v podanem območju:

RANDBETWEEN (spodnja meja; zgornja meja)

Očitno je spodnja meja najmanjše število, zgornja meja pa največje število v obsegu naključnih števil, ki jih želite dobiti.

Podobno kot RAND je tudi RANDBETWEEN v Excelu nestanovitna funkcija in prav tako vrne novo naključno celo število vsakič, ko je vaša tabela znova izračunana ali spremenjena.

Na primer, da bi naredi generator naključnih celih števil Od 10 do 50 (vključno z 10 in 50) uporabite naslednjo formulo RANDBETWEEN:

NAKLJUČNO MED(10, 50)

Generator naključnih števil v Excelu - Ustvarite naključna števila v danem obsegu

Funkcija RANDBETWEEN v Excelu lahko ustvari pozitivna in negativna naključna števila. Če želite na primer dobiti seznam naključnih števil od -10 do 10, v delovni list vnesite naslednjo formulo:

REDBWEEN(-10;10)

Funkcija RANDBETWEEN je na voljo v naslednjih različicah: Excel 2016, Excel 2013, Excel 2010 in Excel 2007.

V prejšnji različici Excel 2003, lahko uporabite zgoraj opisano formulo RAND.

Generiranje naključnih števil z določenim številom decimalnih mest

Čeprav je bila funkcija RANDBETWEEN v Excelu zasnovana za ustvarjanje naključnih celih števil, jo lahko uporabite za ustvarjanje naključnih decimalnih števil s poljubnim številom decimalnih mest.

RANDBETWEEN(spodnja meja*10; zgornja meja*10)/10

Na primer, če želite dobiti seznam števil z eno decimalno mesto, pomnožite spodnjo in zgornjo vrednost z 10, nato pa vrnjeno vrednost delite z 10:

Naslednja formula RANDBETWEEN vrne naključna decimalna števila od 1 do 50:

NAKLJUČNO MED(1*10;50*10)/10

Generator naključnih števil v Excelu - Ustvarite naključna števila z eno decimalno mesto

Prav tako do naredite generator naključnih števil od 1 do 50 na dve decimalni mesti, pomnožite argumente funkcije RANDBETWEEN s 100 in nato rezultat delite s 100:

NAKLJUČNO MED(1*100; 50*100)/100

Generator naključnih števil v Excelu - Ustvarite naključna števila z dvema decimalnima mestoma

Generator naključnih datumov v Excelu

Če želite vrniti seznam naključnih datumov med podanima datumoma, uporabite funkcijo RANDBETWEEN v kombinaciji z DATE:

RANDBETWEEN (DATE (začetni datum); DATE (končni datum))

Če želite na primer dobiti seznam datumov med 1. septembrom 2017 in vključno z 20. novembrom 2017, vnesite naslednjo formulo v delovni list:

RANDBETWEEN(DATUM(2017;9;1);DATUM(2017;11;21))

Ne pozabite uporabiti oblike datuma za celico(e) in dobili boste seznam naključnih datumov, kot je ta:

Generator naključnih števil v Excelu - Ustvarjanje naključnih datumov

Generator naključnega časa v Excelu

V internem sistemu Excel so časi shranjeni kot decimalna števila in lahko uporabite standard Excel funkcija RAND, da vstavite naključna realna števila in nato preprosto uporabite obliko časa v celicah:

Generator naključnih števil v Excelu – generiranje naključnega časa s funkcijo RAND in zanj uporaba oblike zapisa časa

Za izdelavo generatorja naključnega časa v določenem obsegu je potrebna bolj specifična formula. Pa poglejmo pobliže.

Generator naključnega časa v določenem območju

Če želite vstaviti poljuben čas med katera koli dva časovna intervala, ki ju določite, uporabite funkcijo TIME v kombinaciji z Excel RAND:

ČAS (začetni čas) + RAND() * (ČAS (začetni čas) - ČAS (končni čas))

Na primer, če želite vstaviti naključni čas med 5:30 in 18:00, lahko uporabite eno od naslednjih formul:

ČAS(5,30,0)+RAND()*(ČAS(18,0,0)-ČAS(5,0,0))

Generator naključnih števil v Excelu - Ustvari naključni čas v danem intervalu

Generator naključnih črk v Excelu

Če želite vstaviti naključno črko, morate uporabiti kombinacijo treh različnih funkcij:

CHAR(REDBMEEN(CODECHAR("A"),CODECHAR("Z")))

Pri čemer je A prvi znak, Z pa zadnji znak v obsegu črk, ki jih želite vključiti (po abecednem vrstnem redu).

Analizirajmo funkcije v zgornji formuli:

  • CODE Vrne številske kode ANSI za navedene črke.
  • RANDBETWEEN sprejme števila, ki jih vrne funkcija CODE, kot spodnjo in zgornjo vrednost obsega.
  • CHAR pretvori naključne kode ANSI, ki jih vrne RANDBETWEEN, v ustrezne črke.

Generator naključnih števil v Excelu - Ustvarjanje naključnih črk

Ker se kode ANSI razlikujejo za velike in male črke, ta formula razlikuje med velikimi in malimi črkami.

Če nekdo zna kode znakov ANSI na pamet, vam nič ne preprečuje, da kode posredujete neposredno funkciji RANDBETWEEN.

Na primer, če želite dobiti poljubne velike črke med A (koda ANSI 65) in Z (koda ANSI 90), napišete:

CHAR(REDBMEEN (65,90))

Če želite ustvariti male črke med a (koda ANSI 97) in z (koda ANSI 122), uporabite naslednjo formulo:

CHAR(REDBMED(97,122))

Za vstavljanje naključnega posebnega znaka, na primer! "# $% & "() * +, - /, uporabite funkcijo RANDBETWEEN s spodnjim parametrom, nastavljenim na 33 (koda ANSI za "!") in zgornjim parametrom, nastavljenim na 47 (koda ANSI za "/").

CHAR(REDBMEEN(33,47))

Generator naključnih števil v Excelu - ustvarjanje naključnih simbolov

Kako preprečiti ponovni izračun RAND in RANDBETWEEN

Če želite imeti trajen nabor naključnih števil, datumov ali besedilnih nizov, ki se ne bodo vsakič spremenili, to je, da popravite naključna števila, ko se delovni list ponovno izračuna, uporabite eno od naslednjih metod:

  1. Če želite funkcijam RAND ali RANDBETWEEN preprečiti ponovni izračun v eni celici, izberite to celico, preklopite na vrstico Formule in pritisnite F9, da zamenjate formulo z njeno vrednostjo.
  2. Če želite preprečiti, da bi funkcija naključnega števila v Excelu samodejno posodabljala vrednosti v več celic, uporabite funkcijo Prilepi. Izberite vse celice s formulo za generiranje naključnih vrednosti, kliknite Ctrl+C da jih kopirate, nato z desno miškino tipko kliknite izbrani obseg in kliknite " Vstavite posebno"--> "Vrednosti".

Generator naključnih števil v Excelu – vstavljanje vrednosti

Generator naključnih števil z uporabo analize podatkov

S paketom za analizo podatkov lahko npr. ali drugo distribucijo. Ta paket privzeto ni omogočen, zato ga morate prenesti. Kako to storiti, je opisano v tem.

Primer generiranja naključnih števil normalne porazdelitve

Da bi ustvarili naključna števila normalne porazdelitve, pojdite na zavihek »PODATKI«, v skupini »Analiza« izberite »Analiza podatkov«.

Generator naključnih števil v Excelu – Analiza podatkov

Na seznamu, ki se odpre, izberite » Generiranje naključnih števil« in pritisnite gumb »V redu«.

Generator naključnih števil v Excelu - Generiranje naključnih števil

V oknu, ki se odpre, na seznamu " Distribucija»izberi« normalno ", vnesite število spremenljivk, število naključnih števil, povprečje in varianco ter mesto, kamor želite postaviti ustvarjena naključna števila.

Generator naključnih števil v Excelu - Generiranje naključnih števil normalne porazdelitve

Po vnosu vseh podatkov kliknemo na gumb “OK” in kot rezultat dobimo generirana naključna števila normalne porazdelitve.

No, to je vse. Zdaj ste se naučili kako narediti generator naključnih števil, števila v obsegu, števila z določenim številom decimalnih mest, naključni datumi, naključni časi in naključne črke, kot tudi generirati naključna števila normalne porazdelitve. Tako lahko s tem znanjem ustvarite ne samo generator naključnih števil v Excelu, ampak tudi .

Različne loterije, nagradne igre itd. se pogosto izvajajo v številnih skupinah ali javnostih itd., lastniki računov pa jih uporabljajo za privabljanje novega občinstva v skupnost.

Rezultat takih žrebanj je pogosto odvisen od sreče uporabnika, saj se prejemnik nagrade določi naključno.

Za to določitev organizatorji loterije skoraj vedno uporabljajo spletni ali vnaprej nameščen generator naključnih števil, ki se distribuira brezplačno.

Izbira

Nemalokrat je lahko izbira takšnega generatorja težka, saj je njihova funkcionalnost precej različna – pri nekaterih precej omejena, pri drugih precej široka.

Izvaja se precej veliko število takih storitev, vendar je težava v tem, da se razlikujejo po obsegu.

Mnogi so na primer v svoji funkcionalnosti vezani na določeno socialno omrežje(na primer, veliko generatorskih aplikacij deluje samo s povezavami iz te).

Najenostavnejši generatorji preprosto naključno določijo število znotraj danega območja.

To je priročno, ker rezultata ne povezuje z določeno objavo, kar pomeni, da se lahko uporablja za nagradne igre izven družbenega omrežja in v različnih drugih situacijah.

V bistvu nimajo druge uporabe.

Nasvet! Pri izbiri najprimernejšega generatorja je pomembno upoštevati, za kaj ga bomo uporabljali.

Specifikacije

Za najhitrejši postopek izbire optimalne spletne storitve generiranja naključnih številk spodnja tabela prikazuje glavne specifikacije in funkcionalnosti takih aplikacij.

Tabela 1. Značilnosti delovanja spletnih aplikacij za generiranje naključnega števila
ImeSocialno omrežjeVeč rezultatovIzberite s seznama številkSpletni pripomoček za spletno mestoIzberite iz obsegaOnemogočanje ponovitev
RandStuffjajaštjašt
Cast LotsUradna spletna stran ali VKontakteštštjajaja
Naključno številoUradna stranštštštjaja
RandomusUradna stranjaštštjašt
Naključna številaUradna stranjaštštštšt

Vse aplikacije, obravnavane v tabeli, so podrobneje opisane spodaj.

RandStuff

To aplikacijo lahko uporabljate na spletu, tako da sledite povezavi do uradne spletne strani http://randstuff.ru/number/.

To je preprost generator naključnih števil, odlikuje ga hitro in stabilno delovanje.

Uspešno se izvaja v obliki ločene samostojne aplikacije na uradni spletni strani in kot aplikacija v .

Posebnost te storitve je, da lahko izbere naključno številko iz določenega obsega in iz določenega seznama številk, ki jih je mogoče določiti na spletnem mestu.

  • Stabilno in hitro delo;
  • Pomanjkanje neposredne povezave s socialnim omrežjem;
  • Izberete lahko eno ali več številk;
  • Izbirate lahko samo med navedenimi številkami.

Ocene uporabnikov te aplikacije so naslednje: »Prek te storitve določimo zmagovalce v skupinah VKontakte. Hvala,« »Najboljši ste«, »Uporabljam samo to storitev.«

Cast Lots

Ta aplikacija je preprost generator funkcij, implementiran na uradni spletni strani v obliki aplikacije VKontakte.

Obstaja tudi gradnik generatorja, ki ga lahko vstavite na svoje spletno mesto.

Glavna razlika od prejšnje opisane aplikacije je, da vam ta omogoča onemogočanje ponavljanja rezultata.

To pomeni, da se pri izvajanju več generacij zapored v eni seji številka ne bo ponovila.

  • Razpoložljivost pripomočka za vstavljanje na spletno mesto ali blog;
  • Možnost onemogočanja ponavljanja rezultatov;
  • Prisotnost funkcije "še več naključnosti", po aktiviranju katere se spremeni izbirni algoritem.

Ocene uporabnikov so naslednje: "Deluje stabilno, je zelo priročno za uporabo", "Priročna funkcionalnost", "Uporabljam samo to storitev".

Naključno število