Noch ein Test:
<?php
$erste=4;
$wiederholungen=1000000;
$ar=array(1,2,3,4,5,6,7,8,9,0);
$e=array(0,0,0,0,0,0,0,0,0,0);
for( $i=0; $i < $wiederholungen; $i++ ) {
$as=$ar;
shuffle($as);
for ($k=0; $k<$erste; $k++) {
$z=array_shift($as);
$e[$z]++;
#print "$z, ";
}
#print "\n";
# Ab hier ist übrigens nur noch der Rest in $as ...
}
print_r ($e)
?>
Ergebnis:
Array
(
[0] => 399801
[1] => 399465
[2] => 400351
[3] => 400778
[4] => 400199
[5] => 399426
[6] => 399088
[7] => 400522
[8] => 400030
[9] => 400340
)
Ist auch gut verteilt...eine Annäherung an 40% (~ 400000) wäre der nach unendlich vielen Wiederholungen zu erwartende Zustand gewesen.
Jörg Reinholz