Tagebuch-Eintrag #14
Mathe-Aufgaben generieren
Übung macht den Meister. Eigentlich wollte ich mir die Python-Funktionen del näher in der Praxis anschauen. Doch ich warte damit noch, bis ich die bisher gelernten noch etwas weiter geübt habe.
Auf die folgende Idee brachte mich meine Tochter. Ich sollte ihr immer mal Mathe-Aufgaben geben, damit Sie Kopfrechnen machen kann.
So ein Zufall – mit random-Funktion
Ich hatte über die random-Funktion von Python schon gelesen und jetzt war es Zeit, es in der Praxis zu testen und zu üben.
Funktionsweise der Mathe-Aufgabe
Diese einfache Übung soll zwei Zufallszahlen generieren, die miteinander addiert werden (Addition war die Vorgabe der Kundin – also meiner Tochter ;)). Die generierte Aufgabe soll zunächst auf dem Bildschirm ausgegeben werden. Danach wird nach dem Ergebnis gefragt, welches der Anwender eingeben muss.
Anschließend wird im Script geprüft, ob das eingegebene Ergebnis richtig ist. Wenn ja, wird die Richtigkeit bestätigt, wenn nein, dann wird die Richtigkeit auch mit einer Meldung verneint und zusätzlich das richtige Ergebnis dargestellt.
Das Python-Script
Die für das Script benötigten Zufallszahlen werden zunächst über die random-Funktion importiert und mit random.seed() initialisiert.
# Modul random importieren
import random
# Zufallsgenerator initialisieren
random.seed()
Danach werden zwei Zufallszahlen in den Bereichen 1 bis 100 generiert und jeweils einer Variable zugewiesen. In meinem Beispiel zahl1 und zahl2.
# Die Zufallszahlen generieren
zahl1 = random.randint(1,100)
zahl2 = random.randint(1,100)
Direkt danach wird das richtige Ergebnis in der Variable richtiges_ergebnis gespeichert.
richtiges_ergebnis = int(zahl1) + int(zahl2)
Nun wird die Mathe-Aufgabe mit den Zufallszahlen gestellt und dem Anwender nach dem Ergebnis über dem input-Befehl gefragt. Das Ergebnis wird in der Variable zahl3 übergeben und das eingegebene Ergebnis ausgegeben.
# Die Additions-Aufgabe mit den Zufallszahlen ausgeben.
print("Die Aufgabe: " + str(zahl1) + " + " + str(zahl2))
# User gibt sein Ergebnis ein
user_ergebnis= input("Ergebnis: ")
zahl3 = int(user_ergebnis)
# Das Ergebnis des Users ausgeben
print("Dein Ergebnis: ", user_ergebnis)
Am Ende folgt eine simple if-Abfrage, wenn das Ergebnis richtig, dann… Ansonsten…
if zahl3 == richtiges_ergebnis:
# Ausgabe, wenn das eingegebene Ergebnis richtig ist.
print("Richtig!")
else:
# Ausgabe, wenn das Ergebnis falsch ist.
print("Leider falsch :(")
print("Das richtige Ergebnis lautet:", richtiges_ergebnis)

Keine Ahnung ob man mich als faul bezeichnen sollte, wenn ich statt selbst die Aufgaben ausdenke, es einem Python-Script überlasse. Für mich war es jedenfalls eins gute Übung. Und meiner Tochter hat es gefallen.
Jedoch stellte ich fest, dass es umständlich war eine neue Aufgabe zu generieren. Meine Tochter musste immer auf dem grünen Pfeil im VS Code klicken, damit das Script im Terminal erneut ausgeführt wird.
Und daraus resultiert die nächste Idee. Ich werde das Script später erweitern. Es soll dann gefragt werden, ob eine neue Aufgabe gestellt werden soll. Aber gut, das ist dann was für den nächsten Tagebuch-Eintrag.
Hier noch das komplette Script der Version 0.0.1.
# Modul random importieren
import random
# Zufallsgenerator initialisieren
random.seed()
# Die Zufallszahlen generieren
zahl1 = random.randint(1,100)
zahl2 = random.randint(1,100)
# Das richtige Ergebnis ausrechnen
richtiges_ergebnis = int(zahl1) + int(zahl2)
# Die Additions-Aufgabe mit den Zufallszahlen ausgeben.
print("Die Aufgabe: " + str(zahl1) + " + " + str(zahl2))
# User gibt sein Ergebnis ein
user_ergebnis = input("Ergebnis: ")
zahl3 = int(user_ergebnis)
# Das Ergebnis des Users ausgeben
print("Dein Ergebnis: ", user_ergebnis)
if zahl3 == richtiges_ergebnis:
# Ausgabe, wenn das eingegebene Ergebnis richtig ist.
print("Richtig!")
else:
# Ausgabe, wenn das Ergebnis falsch ist.
print("Leider falsch :(")
print("Das richtige Ergebnis lautet:", richtiges_ergebnis)