Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 8.02.2009 Skąd: Wola Filipowska Ostrzeżenie: (0%)
|
Witam!
W jaki sposób wygenerować zestaw liczb z przedziału np. 1 do 500 tak aby nie powtarzały się? Używam do tego pętli i funkcji rand(), ale niestety liczby dość często się powtarzają. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 295 Pomógł: 9 Dołączył: 8.02.2006 Ostrzeżenie: (0%)
|
lepiej najpierw wypelnic tablice liczbami i losowac element i wycinac go (kolejne losowania maja miejsce na pozostalych) ale tu dochodzi problem tego, że jak wytniesz coś ze środka musisz wszystko przesunąć a to strata czasu i zasobów. Prostym rozwiązaniem jest wylosowanie liczby, i wrzucenie do $tablica[$i] następnie wylosowanie i sprawdzenie z $tablica za pomocą in_array(). jeśli się powtarza losować dalej, jak się nie powtarza wrzucić do tablicy $tablica[$i+1] |
|
|
|
Yeti6 [PHP] Losowanie niepowtarzalnych liczb 20.06.2009, 17:07:29
piotrooo89 mt_rand 20.06.2009, 17:09:04 
Wicepsik Cytat(piotrooo89 @ 20.06.2009, 18:09... 20.06.2009, 18:18:09
erix Wciskasz do tablicy te liczby i sprawdzasz przez i... 20.06.2009, 17:10:16 
seth-kk Cytat(erix @ 20.06.2009, 18:10:16 ) W... 20.06.2009, 17:21:31
Wicepsik http://www.google.pl/search?hl=pl&clie...php... 20.06.2009, 17:11:50
Spawnm a może zrobić tablicę , potem shuffle" title="Zoba... 20.06.2009, 17:43:38
athei Kod $los = range(1, 500); //zakres
s... 20.06.2009, 18:17:22
Spawnm mt_rand to takie lepsze rand, rzadziej się liczby ... 20.06.2009, 18:35:45 
Wicepsik Cytat(Spawnm @ 20.06.2009, 19:35:45 )... 20.06.2009, 19:03:46
Szunaj85 Może ten skrypt ci podpasuje.
[PHP] pobie... 20.06.2009, 21:46:40
erix ~Szunaj85, gdybyś zerknął nieco wcześniej, zobaczy... 20.06.2009, 21:48:23
Yeti6 Dziękuję wszystkim za pomoc, array_rand jednak dał... 21.06.2009, 09:37:14 ![]() ![]() |
|
Aktualny czas: 18.06.2026 - 03:31 |