Avatar billede flodhesten Nybegynder
07. august 2008 - 00:18 Der er 7 kommentarer og
1 løsning

Tilfældige tal uden gentagelser

Hej eksperter!

Jeg har forsøgt at lave et script der vælger 10 tilfældige tal mellem 1-50 uden held. Et tal må dog kun udtrækkes én gang, hvilket vanskeliggør det en smule.

Derfor søger jeg hjælp her - på forhånd tak.
Avatar billede janpolsen Nybegynder
07. august 2008 - 00:25 #1
<?php
var_dump(array_rand(range(1,50),10));
?>
Avatar billede flodhesten Nybegynder
07. august 2008 - 00:31 #2
Tak for det hurtige svar. Det var alligevel ret enkelt :)

Skriv og du skal få point.
Avatar billede flodhesten Nybegynder
07. august 2008 - 00:33 #3
Hov, jeg kan se at 0 er med - hvordan slipper jeg af med den?
Avatar billede janpolsen Nybegynder
07. august 2008 - 00:33 #4
Det var så lidt :)
Avatar billede janpolsen Nybegynder
07. august 2008 - 00:40 #5
Wups... array_rand() returnere et array med keys og ikke values.

Du kan eksempelvis se værdier således:
<?php
$range = range(1,50);
$keys = array_rand($range, 10);
foreach ($keys AS $key) {
    echo $range[$key]."<br/>";
}
?>
Avatar billede flodhesten Nybegynder
07. august 2008 - 00:47 #6
Super. Så virker det :)
Avatar billede flodhesten Nybegynder
07. august 2008 - 00:49 #7
Hvordankan det være at

$range = range(1,50);
$keys = array_rand($range, 10);

virker, når

$keys = array_rand(range(1,50), 10);

ikke gør?
Avatar billede olebole Juniormester
07. august 2008 - 01:36 #8
<ole>

$a = range(1, 50);
shuffle($a);
$a = array_slice($a, 0, 10);

var_dump($a);

/mvh
</bole>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester