jansonz Posted April 26, 2004 Report Share Posted April 26, 2004 Nepieciešams ģenerēt skaitli no 1 līdz 100, tā, lai skaitlis neatkārtotos. Cik noprotu funkcija rand negarantē šādu letu :unsure: Link to comment Share on other sites More sharing options...
Aleksejs Posted April 26, 2004 Report Share Posted April 26, 2004 Pie 101 reizes garantēti atkārtosies kāds skaitlis ;) Link to comment Share on other sites More sharing options...
DimanC Posted April 26, 2004 Report Share Posted April 26, 2004 rand jau nebūtu rand, ja kaut ko garantētu... :P vispār ģenerē un taisi masīvu - //ja drīkst, rakstīšu pseido kodā... ;) ,kāds fanāts drīkst pārrakstīt uz PHP //php vēl man nava asinīs... <_< $generated=array(); ... $skaits := 0; while (skaits<100) repeat $skaitlis = 1 + rand(100); //vai kādi tur argumenti... until (!isset ($generated[skaitlis])); $generated[$skaitlis] = TRUE; $skaits++; //izdara, ko vajag ar to skaitlīti... .... wend //end of while... re, kāds kruts pseido kods man sanāca... ghghgh... Link to comment Share on other sites More sharing options...
Aleksejs Posted April 26, 2004 Report Share Posted April 26, 2004 Tajā krutajā kodā var ieviest nelielu uzlabojumu, ka ja ir jau tāds skaitlis bijis, ģenerē nevis jaunu random skaitli, bet gan esošajam pieskaita 1 pēc moduļa 100, kamēr uztrāpa uz tāda, kas nav bijis. Citādi pārāk ilgi aizņems pēdējo skaitļu ģenerēšana. Link to comment Share on other sites More sharing options...
Recommended Posts