Autor | Zpráva | ||
---|---|---|---|
Jan26 Profil * |
#1 · Zasláno: 2. 12. 2007, 00:22:50
Zdravim... resim tu jeden problem a ani nevim jestli, to nejak jde... proto se tu ptam. potrebuju vybrat 5 cisel z intervalu 1 - 10.. to by nebyl takovej problem, jenze ja potrebuju, aby se tam ty cisla neopakovali... potrebuju tam mit proste 5 ruznyh cisel v tomto intervalu...
Budu rad za kazdou radu... |
||
ah01 Profil |
#2 · Zasláno: 2. 12. 2007, 00:42:33
Měl by ti stačit následující kód:
var pole = []; for(var i = 0; i < 5; i++){ var rnd; do{ rnd = Math.round(Math.random()*9 + 1); }while(pole.indexOf(rnd) > -1) pole.push(rnd); } alert(pole.sort()); |
||
peta Profil |
#3 · Zasláno: 2. 12. 2007, 09:05:28
Jan26
Jestli se jedna o 5 cisel, pak je rychlejsi je nasoukat do pole a zamichat pole. Jinak viz ah01, cislo pridat do pole a porovnavat pres vsechny polozky pole, jestli tam je (cyklus ukoncis v okamziku, kdy najdes shodu). |
||
Časová prodleva: 4 dny
|
|||
peta Profil |
#4 · Zasláno: 6. 12. 2007, 08:21:36
Nebo mne jeste napadla takova nesmysla, ale slo by to pouzit.
cyklus (pole[0][i]=i; pole[1][i]=random(max_i); ) sort (pole podle pole[1]); Coz pole zamicha, ale vice-mene (protoze JS sort pouziva nestabilni algoritmus, stabilni by to bylo 100%) ti zachova poradi nahodnych cisel serazene. Cili 1,2,3,4,5 -> 1,4|2,3,5 - skupiny serazenych cisel |
||
Časová prodleva: 16 let
|
0