Zufallszahlen miteinander addieren – php?
Hey, Leute!
Ich soll ein php- Programm erstellen, womit man Matheaufgaben erstellen kann.
Dazu sollen Zahlen zufällig ausgewählt und schließlich addiert werden.
Also nach so einem Muster:
17 + 3 = ?
Lösung: 20
Wie kann man das lösen, das zufällige Zahlen ausgewählt werden, diese zuerst angezeigt und dann später addiert werden? Also mithilfe von php (kein hohes Niveau, sondern eher Anfängerniveau).
Ich freue mich über jede Antwort. Vielen Dank im Voraus :)
3 Antworten
Für zufällige Zahlen gibt es die Funktion rand.
https://www.php.net/manual/de/function.rand.php
Damit kannst du dir zwei Variablen mit zufälligen Werten erzeugen. Mit echo gibts du dann die beiden Variablen und die Summe aus. Fertig.
Danke! Bin nicht selber auf meinen Fehler gekommen
https://www.w3schools.com/php/func_math_rand.asp
https://www.w3schools.com/php/php_operators.asp
https://www.w3schools.com/php/func_string_echo.asp
Mehr brauchst du nicht.
Kann es auch für dich machen aber dann werde ich nur besser und du dümmer/schlechter in der Schule deswegen versuch es erstmal alleine.
<?php
// rand() = Random Number(Niedrigste Zahl, Größte Zahl)
// zufällige zahl wird in einer Variable gespeichert
$ersteZahl = rand(0,10);
$zweiteZahl = rand(0,10);
echo $ersteZahl."+".$zweiteZahl."<br>
Lösung: ". $ersteZahl+$zweiteZahl;
?>
Du meintest doch sowas oder ? einfach eine Mathe Aufgabe generieren und die Lösung anzeigen zum Überprüfen. Das sind nur 3 Zeilen , // sind Kommentare
Zeig doch mal, was Du schon hast, dann kann man darauf aufbauen.
<?php
if((isset($_POST['z'])) and (is_numeric($_POST['z'])))
{
$zahl = $_POST['z'];
{
function Zufallszahl() {
echo rand(1,20);
}
while(z>0)
{
Zufallszahl(); echo " "; echo "+"; echo " "; Zufallszahl(); echo " "; echo "="; echo "?<br/>";
Zufallszahl() + Zufallszahl();"<br/>"
}
}
?>
Vielen Dank. Wie kann ich, wenn ich – echo rand(5, 15); – schreibe, dem ermittelten Wert eine Variable zuweisen? Habe zum Beispiel – echo rand(10,100) == $a – versucht, aber das funktioniert leider nicht.