Výsledky 1 až 10 z 10

Téma: [PHP] Nahodne generovani

  1. #1

    Standardní [PHP] Nahodne generovani

    potrebuju generovat vybrany pocet cisel z intervalu treba 0 - X vymyslel jsem tohle ale v pripade ze generuju velky pocet cisel napr X-1 tak to trva hodne dlouho jakmam udelat aby z vybranych cisel uz dale nevybiral?

    for($i=0;$i<$Hodnota;$i++)
    {
    do
    {
    $Random_Cislo=rand(1,$Pocet_Otazek_Celkem);
    $Znovu=false;
    for($j=0;$j<$i;$j++)
    {
    if($Random_Cislo==$Rada["$j"])
    $Znovu=true;
    }
    $Rada["$i"]=$Random_Cislo;
    }

    while($Znovu==true);
    }

    no a druhy problem mam v tom ( je to v postate ten samy princip) ze potrebuju vyslednou vygenerovanou radu cisel prohazet nahodne

    jestli me nekdo poradite budu vam vdecny
    AMD Athlon XP 1700+ @ 2000+ (1466/1665) , Tt Volcano 7+ , Sunon 80mm/3000 5-12V (4x), Soltek SL-75DRV4, Kingmax 256 MB DDR300, Creative SB Live 5.1, Seagate Barracuda II 15.3 GB ATA 66, Western Digital Caviar 1.6 GB, Hercules Radeon 8500LE 275/275, Teac 32x, Aopen H600A

  2. #2

    Standardní

    treba u tak velkyho poctu jako X-1 (kde X je pocet moznych) generovat nahodne ty, ktery tam nebudou
    1) ASUS M6A
    2) Toshiba Portége R600-10U
    3) ASUS A8V-X AMD Athlon 64 3000+ Kingmax 2x256MB DDR 400 WD 120GB Samsung 80 GB GMC G30 Fortron FSP400-60THN-P
    Ideální indentace pro Pascal je šest stop pod zem.

  3. #3

    Standardní

    to byl pouze napr. ono se muze generovat 1 cislo a nebo x-1 prave
    AMD Athlon XP 1700+ @ 2000+ (1466/1665) , Tt Volcano 7+ , Sunon 80mm/3000 5-12V (4x), Soltek SL-75DRV4, Kingmax 256 MB DDR300, Creative SB Live 5.1, Seagate Barracuda II 15.3 GB ATA 66, Western Digital Caviar 1.6 GB, Hercules Radeon 8500LE 275/275, Teac 32x, Aopen H600A

  4. #4

    Standardní

    Citace Původně odeslal Nicx
    to byl pouze napr. ono se muze generovat 1 cislo a nebo x-1 prave
    tak asi jak rikal sisi, mit pole 1 az X a dostatecnou dobu to michat a pak vzit N prvnich prvku...
    Citace Původně odeslal sisi
    Neviem aky velky ma byt ten rozsah (teda X), ale ak to nie je velke, tak zober pole [1, ... , X], nahodne ho "premiesaj" niekolkymi transpoziciami (vymena dvoch prvkov) a potom ber prvky jeden za druhym. (Nie som si isty, kolko transpozicii to chce, aby poradie tych prvkov bolo "rozumne" znahodnene... ale |X| by mohlo pre zaciatok stacit.)
    1) ASUS M6A
    2) Toshiba Portége R600-10U
    3) ASUS A8V-X AMD Athlon 64 3000+ Kingmax 2x256MB DDR 400 WD 120GB Samsung 80 GB GMC G30 Fortron FSP400-60THN-P
    Ideální indentace pro Pascal je šest stop pod zem.

  5. #5

    Standardní

    ok to by slo aplikovat na ten druhy problem ale ten prvni toho samotneho generovani to neresi..

    to generovani nekdy trva opravdu hodne dlouho
    AMD Athlon XP 1700+ @ 2000+ (1466/1665) , Tt Volcano 7+ , Sunon 80mm/3000 5-12V (4x), Soltek SL-75DRV4, Kingmax 256 MB DDR300, Creative SB Live 5.1, Seagate Barracuda II 15.3 GB ATA 66, Western Digital Caviar 1.6 GB, Hercules Radeon 8500LE 275/275, Teac 32x, Aopen H600A

  6. #6

    Standardní

    no a muzes aspon rict, v jakem radu pro X (maximum) a N (pocet generovanych cisel) se pohybujes?

    EDIT: jeste bys mohl misto fce rand() pouzit mt_rand(). rikaj ze je rychlejsi...
    1) ASUS M6A
    2) Toshiba Portége R600-10U
    3) ASUS A8V-X AMD Athlon 64 3000+ Kingmax 2x256MB DDR 400 WD 120GB Samsung 80 GB GMC G30 Fortron FSP400-60THN-P
    Ideální indentace pro Pascal je šest stop pod zem.

  7. #7

    Standardní

    no dalo by se rici X 100-ky

    a N prakticky 10-ky co se tyce toho generovani v tomhle pripade ta rychlost jde prezit
    u toho prehazovani je to pouziti tragicky a ja musim mit obe fukkci rychle at je zvoleno jakykoliv N
    AMD Athlon XP 1700+ @ 2000+ (1466/1665) , Tt Volcano 7+ , Sunon 80mm/3000 5-12V (4x), Soltek SL-75DRV4, Kingmax 256 MB DDR300, Creative SB Live 5.1, Seagate Barracuda II 15.3 GB ATA 66, Western Digital Caviar 1.6 GB, Hercules Radeon 8500LE 275/275, Teac 32x, Aopen H600A

  8. #8

    Standardní

    no ja nevim, ale kdyz sem si ted napsal dejme tomu fci
    Kód:
    function rand_seed1&#40;$pocet,$maximum&#41;
    &#123;
      $pole = array&#40;&#41;;
      for&#40;$i=0; $i<$pocet; $i++&#41;
      &#123;
        $new = mt_rand&#40;0,$maximum&#41;;
        if &#40;$pole&#91;$new&#93;&#41; $i--;
        else $pole&#91;$new&#93; = $i+1;
      &#125;
      return $pole;
    &#125;
    tak mi s parametrama 150,400 vyhodila vysledek za 0.00113702 sekundy a se vstupem 70,100 za 0.00069308 sekundy. to je pomaly?
    1) ASUS M6A
    2) Toshiba Portége R600-10U
    3) ASUS A8V-X AMD Athlon 64 3000+ Kingmax 2x256MB DDR 400 WD 120GB Samsung 80 GB GMC G30 Fortron FSP400-60THN-P
    Ideální indentace pro Pascal je šest stop pod zem.

  9. #9

    Standardní

    ja jsem v php zacatecnik na to abych vymyslel nedejboze nejakou funkci vyzkousim dik
    AMD Athlon XP 1700+ @ 2000+ (1466/1665) , Tt Volcano 7+ , Sunon 80mm/3000 5-12V (4x), Soltek SL-75DRV4, Kingmax 256 MB DDR300, Creative SB Live 5.1, Seagate Barracuda II 15.3 GB ATA 66, Western Digital Caviar 1.6 GB, Hercules Radeon 8500LE 275/275, Teac 32x, Aopen H600A

  10. #10

    Standardní

    uf tak jsem to zmastil ty generovani jsem nakonec udelal funkci array_rand

    vysledek je zde pokud chcete kritizovat

    http://www.pristine.cz/sekce/karlos2/admin_web.php

    http://www.pristine.cz/sekce/karlos2/login.php

    prihlaseni 1234567890
    AMD Athlon XP 1700+ @ 2000+ (1466/1665) , Tt Volcano 7+ , Sunon 80mm/3000 5-12V (4x), Soltek SL-75DRV4, Kingmax 256 MB DDR300, Creative SB Live 5.1, Seagate Barracuda II 15.3 GB ATA 66, Western Digital Caviar 1.6 GB, Hercules Radeon 8500LE 275/275, Teac 32x, Aopen H600A

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •