
bitte nicht wegen dem wahrscheinlich schlechten programmierstil(globale variablen,usw.) beschweren auser wenn das das problem ist danke

Code: Alles auswählen
from Tkinter import *
import random
import math
import __future__ #für genaue nach komma stellen
#Legt Anzahl der zu berechnenden Terme fest
wdh = 10
#für zusatz funktion
r=0
def prog():
global r
global wdh
aexit.config(text="Nächster")
if wdh!=0:
#Rechenarten bestimmen(falls sie potenzen mit einbeziehen wollen die oberen beiden als Kommentar
#kennzeichnen und bei den unteren die Kennzeichnung als Kommentar entfernen
ra1=random.randint(1,4)
ra2=random.randint(1,4)
#ra1=random.randint(1,5)
#ra2=random.randint(1,5)
#Erste Rechenart bestimmen
if ra1 == 1:
s1 = "+"
if ra1 == 2:
s1 = "-"
if ra1 == 3:
s1 = "/"
if ra1 == 4:
s1 = "*"
if ra1 == 5:
s1 = "^"
#Zweite Rechenart bestimmen
if ra2 == 1:
s2 = "+"
if ra2 == 2:
s2 = "-"
if ra2 == 3:
s2 = "/"
if ra2 == 4:
s2 = "*"
if ra2 == 5:
s2 = "^"
#Zahlen bsetimmen
z1=random.randint(1,10)
z2=random.randint(1,10)
z3=random.randint(1,10)
#Hier wird die rechnung in die Datei gschrieben und auf dem Interpreter ausgegeben
rechnung = ("("+ str(z1) + (s1) + str(z2) + ")"+ (s2) + str(z3))
logfile.write("Rechnung:" +(rechnung)+ "\n")
t.config(text= (rechnung))
#Das richtige Ergebnis wird in die Datei gesschrieben
rierg = eval(((compile((rechnung),"string","eval",__future__.division.compiler_flag))))
logfile.write("Richtiges Ergebnis:" + str(rierg)+ "\n")
#Der Schüler gibt sein Ergebns ein welches in die Datei geschrieben wird
eigerg=(eerg.get())
logfile.write("Ergebnis von " + (j) +":" + str(eigerg)+"\n\n" )
wdh = wdh - 1
#kleiner zusatz
if eigerg == rierg:
r = r + 1
else:
logfile.write((j) + " hat" + str(r)+ "/10 richtig")
aexit.config(text="Beenden",command=g.destroy)
#Interface Namens eingabe
f= Tk()
f.title("Test")
w=Label (master=f,text= "Name und vorname bitte?")
w.pack()
v = StringVar()
eA = Entry(master=f,textvariable=v)
eA.pack()
bexit = Button(master=f,text="Weiter",command =f.destroy)
bexit.pack()
f.mainloop()
#Es wird nach Name und Vorname gefragt und eine Datei mit dem Namen dieser Person erstellt
v.set("Name,Vorname")
j = v.get()
logfile = open("Test von " +(j) +".txt","a")
#Interface Rechnung
g = Tk()
g.title("Test")
t=Label (master=g,text= "Term:")
t.pack()
eerg = Entry(master=g)
eerg.insert(0,0)
eerg.pack()
aexit = Button(master=g,text="Start",command = prog)
aexit.pack()
g.mainloop()
logfile.close
#Ende
schonmal danke im vorraus