Bin neu hier im Forum sowie auch in Python.
Hab mir als kleine Aufgabe ein Kopfrechnungs-Simulator programmiert, denn ein Taschenrechner habe ich schon^^.
Ich stehe noch ziemlich am Anfang und wollte mal Eure Meinung ggf. Verbesserungsvorschläge/Änderungen hören
Kommentare wurden NOCH keine hinzugefügt - Werde ich aufjedenfall bei meinen nächsten "Übungs-Programmen" dazufügen!
Code: Alles auswählen
def kopfrechnen():
from random import randint
def intro():
print("Willkommen!\n")
print("Das ist der Kopfrechnungs-Simulator-1337")
print("Hier können Sie ihre Kopfrechnungs-Skills verbessern")
print("Gerechnet kann mit allen gängigen Operatoren\n")
print("+, -, /, *\n")
print("Haben Sie alles Verstanden?\nDann kann es endlich Losgehen!\n")
def auswahl():
global punkte
punkte = []
global usr_op_wahl
operatoren_liste = {1: "Addition", 2: "Subbtraktion", 3: "Division", 4: "Multiplikation"}
print("Auswahlmöglichkeiten:")
for i in operatoren_liste:
print("{zahl}: {operand}".format(zahl=i, operand=operatoren_liste[i]))
usr_op_wahl = int(input("\nAuswahl mittels Zahl (1-4) Eingeben: "))
if usr_op_wahl == 1 or usr_op_wahl == 2 or usr_op_wahl == 3 or usr_op_wahl == 4 in operatoren_liste:
print("Sie haben sich für {} Entschieden".format(operatoren_liste[usr_op_wahl]))
else:
print("Bitte richtige Zahl eingeben")
def durchgänge():
global anzahl_durchgänge
print("Wie viele Rechnungen wollen Sie pro Durchlauf ausführen?")
anzahl_durchgänge = int(input("Anzahl Durchgänge eingeben: "))
def rechnen():
global ergebniss, usr_ergebniss, rechnung
z1 = randint(1, 11)
z2 = randint(1, 11)
operatoren = {1: "+", 2: "-", 3: "/", 4: "*"}
if usr_op_wahl == 1 or usr_op_wahl == 2 or usr_op_wahl == 3 or usr_op_wahl == 4 in operatoren:
ergebniss = eval("{} {} {}".format(z1, operatoren[usr_op_wahl], z2))
usr_ergebniss = float(input("{} {} {} = ".format(z1, operatoren[usr_op_wahl], z2)))
rechnung = "{} {} {} = {}".format(z1, operatoren[usr_op_wahl], z2, ergebniss)
def score():
if ergebniss == usr_ergebniss:
print("Richtig! -> {}\n".format(rechnung))
punkte.append(1)
else:
print("Leider Falsch! -> Richtiges Ergebniss: {}".format(ergebniss))
punkte.append(0)
def again():
print("\n{} von {} Rechnungen wurden richtig gelöst".format(punkte.count(1), len(punkte)))
print("\nWollen Sie erneut Ihr Glück auf die Probe stellen?")
antwort = {1: "Ja", 2: "Nein"}
for i in antwort:
print("{zahl}: {antwort}".format(zahl=i, antwort=antwort[i]))
usr_again_wahl = int(input("\nBitte Wahl treffen"))
if usr_again_wahl == 1:
alles()
elif usr_again_wahl == 2:
exit()
else:
print("\nBitte Zahl 1 oder Zahl 2 eingeben: ")
def alles():
auswahl()
durchgänge()
for i in range(1, anzahl_durchgänge+1):
rechnen()
score()
again()
intro()
alles()
kopfrechnen()
Procl