Lottozahlen mit shuffle() & range ()

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

Schwarzwild80

Grünschnabel
Moin zusammen,

ich benötige mal bitte Eure Hilfe. Ich soll eine Aufgabe lösen die Lottozahlen ausgibt mit Hilfe der array Funktionen shuffle () + range (). Hab hier und unter php.net schon viel gelesen und ausprobiert. Jedoch bisher ohne korrekten Ergebnis.

Hier mein Code:
1675925634150.png

Hier die Ausgabe:
1675925676207.png


Bitte seit gnädig mit mir. :) Ich bin erst seit ca. 2 Monaten in der PHP-Welt zuhause und probiere mich gerade aus in jeder freien Minute.

Könnt Ihr mir hier behilflich sein?

Vielen, vielen Dank im Voraus.

Gruß
 
Wir helfen gerne. Als erstes, formatiere deinne Code sauber. Klingt blöd, aber wenn du später Fehler suchst oder viel später zu deinem Code zurückkommst hilft es dir (und uns) ungemein um zu sehen was der Code macht.
Und bitte poste Code nicht als Bild sondern hier im Forum mit den Code-Tags. Dann können wir ihn kopieren und damit herumwursteln.

Was in deinem unformatierten Code schlecht rauskommt ist der ABlauf. Du gehst 6 mal durch die äussere Schleife. Das ist gut. Aber in jedem Durchgang gehst du ALLE Zahlen durch.
Nimm doch einfach die ersten 6 Zahlen aus dem durchgeschüttelten Array.

PHP:
<?php

$lottoZahlen = range(1, 49);
shuffle($lottoZahlen);

echo "<p>Die gezogenen 6 lottoZahlen sind: "
for($i=0; $i<6; $i++){
    echo $lottoZahlen[$i];
}
echo "</p>"

//Oder nimm die ertsen 6 Einträge und gehe mit foreach durch
//https://www.php.net/manual/de/function.array-slice.php
echo "<p>Die gezogenen 6 lottoZahlen sind: "
foreach(array_slice($lottoZahlen, 0, 6) as $wert){
    echo $wert
}
echo "</p>"

?>
 
Wir helfen gerne. Als erstes, formatiere deinne Code sauber. Klingt blöd, aber wenn du später Fehler suchst oder viel später zu deinem Code zurückkommst hilft es dir (und uns) ungemein um zu sehen was der Code macht.
Und bitte poste Code nicht als Bild sondern hier im Forum mit den Code-Tags. Dann können wir ihn kopieren und damit herumwursteln.

Was in deinem unformatierten Code schlecht rauskommt ist der ABlauf. Du gehst 6 mal durch die äussere Schleife. Das ist gut. Aber in jedem Durchgang gehst du ALLE Zahlen durch.
Nimm doch einfach die ersten 6 Zahlen aus dem durchgeschüttelten Array.

PHP:
<?php

$lottoZahlen = range(1, 49);
shuffle($lottoZahlen);

echo "<p>Die gezogenen 6 lottoZahlen sind: "
for($i=0; $i<6; $i++){
    echo $lottoZahlen[$i];
}
echo "</p>"

//Oder nimm die ertsen 6 Einträge und gehe mit foreach durch
//https://www.php.net/manual/de/function.array-slice.php
echo "<p>Die gezogenen 6 lottoZahlen sind: "
foreach(array_slice($lottoZahlen, 0, 6) as $wert){
    echo $wert
}
echo "</p>"

?>
Hallo Yaslaw,

vielen vielen Dank für deine schnelle und konstruktive Hilfe. Es funktioniert. :cool:

Dies war mein erster Post in dem Forum werde zukünftig selbstverständlich meine Codes in den Tag laden. An der sauberen Formatierung werde ich zukünftig arbeiten. Bitte seht es mir noch ein bisschen nach.

Gruß
Schwarzwild80
 
OK, ist ne "Aufgabe"... akzeptiert.
Aber auch mal wieder ein Beweis, was für ein Schmarrn heutzutage "unterrichtet" wird.

Wieso man bei einem Lotto "6 aus 49" einen kompletten shuffle ausführen soll, entzieht sich mir jeglichem Verständnisses.
Durstenfeld-Algoritmus lernen (alternativ Satollo-Algoritmus), 6 Ziehungen, Fertig is der Lack.
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Zurück