Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Nasumicni brojevi...

[es] :: Pascal / Delphi / Kylix :: Nasumicni brojevi...

[ Pregleda: 2017 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Sky Walker

Član broj: 102549
Poruke: 55



+62 Profil

icon Nasumicni brojevi...27.05.2011. u 11:19 - pre 157 meseci
Code:

var
  Brojevi : Array[1..100] of Byte;
...
 for i := 1 to 100 do
    Brojevi[i] := Random(100)+1;
...


Kako da utvrdim koji niz sada ima istu vrednost i kako mu dodeliti ponovo nasumican broj. Na kraju ne treba biti ponovljenih brojeva u nizu Brojevi[]

Hvala unapred!
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3453

Jabber: djoka_l


+1462 Profil

icon Re: Nasumicni brojevi...27.05.2011. u 11:56 - pre 157 meseci
Hmm, imaš malo problema sa terminologijom, čini mi se...

Ti, u stvari želiš da formiraš permutaciju 100 elemenata na slučajni način, ako sam ja razumeo šta tebi treba.
Evo linka na Wiki: http://en.wikipedia.org/wiki/P...dom_generation_of_permutations

Algoritam je sledeći:
1. napuniš niz Brojevi sekvencom od 1 do 100 (znači Brojevi[1] = 1, ... Brojevi[100] = 100)
2. u petlji generišeš slučajne brojeve i zamenjuješ mesta elementu sa indeksom slučajnog broja i tekućeg broja u petlji.

primer: ulaziš u petlju i generišeš broj od 1 do 100 - rezultat bude, na primer, 79. Tada Brojevi[100] i Brojevi[79] zamene vrednosti;
u drugom koraku generišeš broj od 1 do 99 i rezultat, na primer 14, dovodi do zamene Brojevi[99] i Brojevi[14].


Na taj način, u stvari promešaš sortirani niz u slučajnu permutaciju.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Nasumicni brojevi...

[ Pregleda: 2017 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.