From 784a83bd72f0aae783a5cdf8fd4e38e8cd1a386c Mon Sep 17 00:00:00 2001 From: Ratten Date: Wed, 13 Apr 2022 19:38:12 +0200 Subject: [PATCH] =?utf8?q?minus-Berichtigung=20eingf=C3=BCgt,=20komma=20st?= =?utf8?q?att=20pUnkt=20korregiert,=20wurzel-Berechnung=20eingef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- lerne.py | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/lerne.py b/lerne.py index ecb034d..cdbe9c3 100644 --- a/lerne.py +++ b/lerne.py @@ -90,21 +90,27 @@ class user(): AntwortWerte=[] rightAnswer=0 self.fights=self.fights +1 - UserAntwort=input(self.Monster.Frage) - + UserAntwort=input(self.Monster.Frage) + #liste mit Antworten erstellen for Num in self.Monster.Antwort: - for art in self.Monster.Antwort[Num]: + for art in self.Monster.Antwort[Num]: #print(self.Monster.Antwort[Num][art]) + #if self.Monster.Antwort[Num][art] < 0: AntwortWerte.append(self.Monster.Antwort[Num][art]) #Antworten prüfen while hinweis < 3 and not len(AntwortWerte) == 0: #schauen ob Antwort float ist - if str(UserAntwort).replace('.','',1).isdigit(): + if str(UserAntwort).replace('.','',1).isdigit() or str(UserAntwort).replace('-','',1).isdigit() or str(UserAntwort).replace(',','',1).isdigit(): + if UserAntwort.find(",") >= 0: + UserAntwort=UserAntwort.replace(',','.',1) UserAntwort=float(UserAntwort) - + #print("UserAntwort ist digit") + #if UserAntwort < 0: + # print("Unter Null in Antwort") + if UserAntwort == "" and hinweis < 3: print("keine Antwort gegeben") hinweis=self.hinting(hinweis) @@ -404,7 +410,7 @@ class Antworten(): return FinRechnung def norm_berechnung(self, Rechnung): - permitchars=["-", ".", " ", "+", "*", "/", "^", "(", ")", ":"] + permitchars=["-", ".", " ", "+", "*", "/", "^", "(", ")", ":", "r"] charRechnung=[] executRechnung="" #print(str(Rechnung)+" vor umwandlung")#debug @@ -414,9 +420,9 @@ class Antworten(): charRechnung.append(char) elif char in permitchars: charRechnung.append(char) - executRechnung=''.join(charRechnung) executRechnung=executRechnung.replace("^", "**") + executRechnung=executRechnung.replace("r", "** 0.5") #print(str(executRechnung)+" berechnende Rechnung")#debug antw=eval(executRechnung) antwort=round(antw,2) @@ -597,7 +603,7 @@ print(Folge) #### #Wenn nur bestimmte Fragen geübt werden sollen, nächste Zeile mit Folge Kommentarzeichen entfernen und in die Klammern die Nummern der Fragen eintragen, mit Komma getrennt ### -#Folge=[19, 20, 21] #debug Fragennummer +#Folge=[27] #debug Fragennummer Runde=0 weiter=True -- 2.30.2