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)
return FinRechnung
def norm_berechnung(self, Rechnung):
- permitchars=["-", ".", " ", "+", "*", "/", "^", "(", ")", ":"]
+ permitchars=["-", ".", " ", "+", "*", "/", "^", "(", ")", ":", "r"]
charRechnung=[]
executRechnung=""
#print(str(Rechnung)+" vor umwandlung")#debug
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)
####
#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