Hallo, vielleicht kann mir jmd. helfen.
ich versuche mich grade an einem Programm das meinem Sohn Rechenaufgaben erstellen soll... jetzt hänge ich bei der Subtraktion an dem Problem, dass die erste Zahl ja höher sein muss als die 2. Folgendes habe ich probiert:
from random import randint
counter = int (input ('Wieviele Aufgaben ? '))
richtig = 0
while counter > 0:
zahl1 = randint (100, 999, 10)
zahl2 = randint (100, 999, 10)
if zahl1 < zahl2:
zahl1 = kleiner
zahl2 = groesser
else:
zahl1 = groesser
zahl2 = kleiner
print (groesser)
print (' -')
print (kleiner)
ergebnis = int(input('Wie lautet das Ergebnis? '))
if ergebnis == (groesser - kleiner):
print ('richtig')
richtig = richtig + 1
else:
print ('falsch')
counter = counter - 1
print ()
print ('Richtige Lösungen:')
print (richtig)
Brings nicht auf die Reihe...
auch meine Versuche das ganze als Bedingung in eine while Schleife zu packen schlug fehl...
while zahl1 < zahl2
zahl1 = randint (100, 999, 10)
zahl2 = randint (100, 999, 10)
print (zahl1)
print (' -')
print (zahl2)
bin ratlos und finde in meinen Büchern nix was mein Problem lösen würde...
Probleme mit Randomzahlen
Du kannst die Zahlen in einer Liste ablegen und dann min und max verwenden:
Wenn du random.sample verwendest, ist auch sichergestellt, dass die zahlen verschieden sind.
Code: Alles auswählen
In [1]: from random import sample
In [2]: numbers = sample(range(1, 100), 2)
In [3]: numbers
Out[3]: [75, 51]
In [4]: min(numbers), max(numbers)
Out[4]: (51, 75)
Zuletzt geändert von nezzcarth am Samstag 30. Januar 2021, 17:16, insgesamt 2-mal geändert.
- __blackjack__
- User
- Beiträge: 13110
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Wenn Rechenzeit/Komplexität sowieso keine Rolle spielt kann man auch `sorted()` verwenden: ``zahl2, zahl1 = sorted(sample(range(1, 100), 2)))``
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Es wäre noch gut, wenn Du die Fehlermeldung, die Du bekommst, auch zeigen würdest.
Was sollen denn die drei Zahlen bei randint bedeuten?
Und dann ist `kleiner` oder `groesser` nicht definiert.
Bevor man eine Funktion oder Konstrukt in einem Programm benutzt, liest man dazu die Dokumentation und probiert damit so lange herum, bis man verstanden hat, wie man es benutzt.
Was sollen denn die drei Zahlen bei randint bedeuten?
Und dann ist `kleiner` oder `groesser` nicht definiert.
Bevor man eine Funktion oder Konstrukt in einem Programm benutzt, liest man dazu die Dokumentation und probiert damit so lange herum, bis man verstanden hat, wie man es benutzt.