diff --git a/Formeln.py b/Formeln.py index d8f2e27..f402380 100644 --- a/Formeln.py +++ b/Formeln.py @@ -5,29 +5,36 @@ konstante_eins = k.Groesse(None, None, True, 1) Formeln = [k.Formel('Kraftformel', "F=m*a", i=k.Groesse('F', 'N', False), a=k.Groesse('m', 'kg', False), b=k.Groesse('a', 'm/s', False), c=konstante_eins, z=konstante_eins, y=konstante_eins, x=konstante_eins), - k.Formel('Gleichm. beschl. Bew.',"s=0.5*a*t^2", i=k.Groesse('s', 'm', False), a=k.Groesse(None, None, True, 0.5), + k.Formel('Gleichm. beschl. Bew.', "s=0.5*a*t^2", i=k.Groesse('s', 'm', False), + a=k.Groesse(None, None, True, 0.5), b=k.Groesse('a', 'm/s^2', False), c=k.Groesse('t', 's', False), z=konstante_eins, y=konstante_eins, x=k.Groesse(None, None, True, 2)), - k.Formel('Gewichtskraft',"Fg=9,81*h", i=k.Groesse('Fg', 'N',False), a=k.Groesse(None,None,True,9.81),b=k.Groesse('h','m',False), - c=konstante_eins, z=konstante_eins,y=konstante_eins,x=konstante_eins), - k.Formel('Spannenergie',"Espann=0,5*D*s^2", i=k.Groesse('Espann','J', False), a=k.Groesse(None, None, True, 0.5), + k.Formel('Gewichtskraft', "Fg=9,81*h", i=k.Groesse('Fg', 'N', False), a=k.Groesse(None, None, True, 9.81), + b=k.Groesse('h', 'm', False), + c=konstante_eins, z=konstante_eins, y=konstante_eins, x=konstante_eins), + k.Formel('Spannenergie', "Espann=0,5*D*s^2", i=k.Groesse('Espann', 'J', False), + a=k.Groesse(None, None, True, 0.5), b=k.Groesse('D', 'N/m', False), c=k.Groesse('s', 'm', False), z=konstante_eins, y=konstante_eins, x=k.Groesse(None, None, True, 2)), - k.Formel('Potentielle Energie',"Epot=m*9.81*h", i=k.Groesse('Epot','J',False),a=k.Groesse('m','kg', False), - b=k.Groesse(None, None, True, 9.81), c=k.Groesse('h','m',False), z=konstante_eins, - y=konstante_eins,x=konstante_eins), - k.Formel('Kinetische Energie',"Ekin=0,5*m*v^2",i=k.Groesse('Ekin','J', False), a=k.Groesse(None, None, True, 0.5), + k.Formel('Potentielle Energie', "Epot=m*9.81*h", i=k.Groesse('Epot', 'J', False), + a=k.Groesse('m', 'kg', False), + b=k.Groesse(None, None, True, 9.81), c=k.Groesse('h', 'm', False), z=konstante_eins, + y=konstante_eins, x=konstante_eins), + k.Formel('Kinetische Energie', "Ekin=0,5*m*v^2", i=k.Groesse('Ekin', 'J', False), + a=k.Groesse(None, None, True, 0.5), b=k.Groesse('m', 'kg', False), c=k.Groesse('v', 'm/s', False), z=konstante_eins, y=konstante_eins, x=k.Groesse(None, None, True, 2)), - k.Formel('Elektrische Leistung',"P=U*I", i=k.Groesse('P', 'W', False), a=k.Groesse('U', 'V', False), - b=k.Groesse('I','A', False), c=konstante_eins, z=konstante_eins, x=konstante_eins, y=konstante_eins), - k.Formel("Geschwindigkeit",'v=s/t', i=k.Groesse ('v', 'm/s',False), a=k.Groesse('s', 'm', False), - b=k.Groesse ('t','s', False), z= konstante_eins, y= konstante_eins, x=k.Groesse(None,None,True,-1)), + k.Formel('Elektrische Leistung', "P=U*I", i=k.Groesse('P', 'W', False), a=k.Groesse('U', 'V', False), + b=k.Groesse('I', 'A', False), c=konstante_eins, z=konstante_eins, x=konstante_eins, + y=konstante_eins), + k.Formel("Geschwindigkeit", 'v=s/t', i=k.Groesse('v', 'm/s', False), a=k.Groesse('s', 'm', False), + b=k.Groesse('t', 's', False), z=konstante_eins, y=konstante_eins, + x=k.Groesse(None, None, True, -1)), - k.Formel('Wiederstand',"R=U/I", i=k.Groesse('R', 'Ohm', False), a=k.Groesse('U', 'V', False), + k.Formel('Wiederstand', "R=U/I", i=k.Groesse('R', 'Ohm', False), a=k.Groesse('U', 'V', False), b=k.Groesse('I', 'A', False), c=konstante_eins, z=konstante_eins, y=k.Groesse(None, None, True, -1), x=konstante_eins), - k.Formel('Impuls',"p=m*v", i=k.Groesse('p', 'N*s', False), a=k.Groesse('m', 'kg', False), + k.Formel('Impuls', "p=m*v", i=k.Groesse('p', 'N*s', False), a=k.Groesse('m', 'kg', False), b=k.Groesse('v', 'm/s', False), c=konstante_eins, z=konstante_eins, y=konstante_eins, x=konstante_eins) ] diff --git a/Klassen.py b/Klassen.py index cf2d74e..5493596 100644 --- a/Klassen.py +++ b/Klassen.py @@ -36,37 +36,65 @@ class Formel: return self.dicts def solve_to_i(self): - return [(self.formel.a.wert**self.formel.z.wert) * (self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert) + self.formel.d.wert * self.formel.e.wert * self.formel.f.wert + self.formel.g.wert, self.get_dicts()] + return [(self.formel.a.wert**self.formel.z.wert) * (self.formel.b.wert**self.formel.y.wert) + * (self.formel.c.wert**self.formel.x.wert) + self.formel.d.wert * self.formel.e.wert + * self.formel.f.wert + self.formel.g.wert, self.get_dicts()] def solve_to_a(self): - return [((self.formel.i.wert - self.formel.d.wert * self.formel.e.wert * self.formel.f.wert - self.formel.g.wert)/((self.formel.b.wert ** self.formel.y.wert) * (self.formel.c.wert ** self.formel.x.wert)))**(1/self.formel.z.wert), self.get_dicts()] + return [((self.formel.i.wert - self.formel.d.wert * self.formel.e.wert * self.formel.f.wert + - self.formel.g.wert)/((self.formel.b.wert ** self.formel.y.wert) + * (self.formel.c.wert ** self.formel.x.wert)))**(1/self.formel.z.wert), + self.get_dicts()] def solve_to_b(self): - return [((self.formel.i.wert - self.formel.d.wert * self.formel.e.wert * self.formel.f.wert - self.formel.g.wert)/((self.formel.a.wert ** self.formel.z.wert) * (self.formel.c.wert ** self.formel.x.wert)))**(1/self.formel.y.wert), self.get_dicts()] + return [((self.formel.i.wert - self.formel.d.wert * self.formel.e.wert * self.formel.f.wert + - self.formel.g.wert)/((self.formel.a.wert ** self.formel.z.wert) + * (self.formel.c.wert ** self.formel.x.wert)))**(1/self.formel.y.wert), + self.get_dicts()] def solve_to_c(self): - return [((self.formel.i.wert - self.formel.d.wert * self.formel.e.wert * self.formel.f.wert - self.formel.g.wert) / ((self.formel.b.wert ** self.formel.y.wert) * (self.formel.a.wert ** self.formel.z.wert))) ** (1 / self.formel.x.wert), self.get_dicts()] + return [((self.formel.i.wert - self.formel.d.wert * self.formel.e.wert * self.formel.f.wert + - self.formel.g.wert)/((self.formel.b.wert ** self.formel.y.wert) + * (self.formel.a.wert ** self.formel.z.wert)))**(1/self.formel.x.wert), + self.get_dicts()] def solve_to_d(self): - return [self.formel.i.wert - self.formel.g.wert - (self.formel.a**self.formel.z.wert) * (self.formel.b**self.formel.y.wert)* (self.formel.c.wert**self.formel.x.wert) / self.formel.e.wert * self.formel.f.wert, self.get_dicts()] + return [(self.formel.i.wert - self.formel.g.wert - (self.formel.a.wert**self.formel.z.wert) + * (self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert)) + / (self.formel.e.wert * self.formel.f.wert), self.get_dicts()] def solve_to_e(self): - return [self.formel.i.wert - self.formel.g.wert - (self.formel.a.wert**2) * (self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert) / self.formel.d.wert * self.formel.f.wert, self.get_dicts()] + return [(self.formel.i.wert - self.formel.g.wert - (self.formel.a.wert**self.formel.z.wert) + * (self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert)) + / (self.formel.d.wert * self.formel.f.wert), self.get_dicts()] def solve_to_f(self): - return [(self.formel.i.wert-self.formel.g.wert-(self.formel.a.wert**self.formel.z.wert)*(self.formel.b.wert**self.formel.y.wert)*(self.formel.c.wert**self.formel.x.wert)) / (self.formel.d.wert * self.formel.e.wert), self.get_dicts()] + return [(self.formel.i.wert-self.formel.g.wert-(self.formel.a.wert**self.formel.z.wert) + * (self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert)) + / (self.formel.d.wert * self.formel.e.wert), self.get_dicts()] def solve_to_g(self): - return [- ((self.formel.a.wert**self.formel.z.wert) * (self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert) + self.formel.d.wert * self.formel.e.wert * self.formel.f.wert - self.formel.i.wert), self.get_dicts()] + return [- ((self.formel.a.wert**self.formel.z.wert) * (self.formel.b.wert**self.formel.y.wert) + * (self.formel.c.wert**self.formel.x.wert) + self.formel.d.wert * self.formel.e.wert + * self.formel.f.wert - self.formel.i.wert), self.get_dicts()] def solve_to_z(self): - return [math.log((self.formel.i.wert-self.formel.d.wert*self.formel.e.wert*self.formel.f.wert-self.formel.g.wert) / ((self.formel.b.wert**self.formel.y.wert) * (self.formel.c.wert**self.formel.x.wert)), self.formel.a.wert), self.get_dicts()] + return [math.log((self.formel.i.wert-self.formel.d.wert*self.formel.e.wert + * self.formel.f.wert-self.formel.g.wert) / ((self.formel.b.wert**self.formel.y.wert) + * (self.formel.c.wert**self.formel.x.wert)), + self.formel.a.wert), self.get_dicts()] def solve_to_y(self): - return [math.log((self.formel.i.wert-self.formel.d.wert*self.formel.e.wert*self.formel.f.wert-self.formel.g.wert)/((self.formel.a.wert**self.formel.z.wert) * (self.formel.c.wert**self.formel.x.wert)), self.formel.b.wert), self.get_dicts()] + return [math.log((self.formel.i.wert-self.formel.d.wert*self.formel.e.wert + * self.formel.f.wert-self.formel.g.wert)/((self.formel.a.wert**self.formel.z.wert) + * (self.formel.c.wert**self.formel.x.wert)), + self.formel.b.wert), self.get_dicts()] def solve_to_x(self): - return [math.log(self.formel.i.wert-self.formel.d.wert*self.formel.e.wert*self.formel.f.wert-self.formel.g.wert)/(self.formel.a.wert**self.formel.z.wert)*(self.formel.b.wert**self.formel.y.wert, self.formel.c.wert), self.get_dicts()] + return [math.log((self.formel.i.wert-self.formel.d.wert*self.formel.e.wert + * self.formel.f.wert-self.formel.g.wert)/((self.formel.a.wert**self.formel.z.wert) + * (self.formel.b.wert**self.formel.y.wert)), + self.formel.c.wert), self.get_dicts()] def __init__(self, name, grundform, i, a=Groesse(None, None, True, 0), b=Groesse(None, None, True, 0), c=Groesse(None, None, True, 0), d=Groesse(None, None, True, 0), e=Groesse(None, None, True, 0), diff --git a/Main.py b/Main.py index 39dc2cf..7f615a1 100644 --- a/Main.py +++ b/Main.py @@ -2,6 +2,6 @@ import Formeln import user_IO import Klassen while True: - dicts = user_IO.user_Input() + dicts = user_IO.user_input() ret = Formeln.looper(dicts[0], dicts[1]) - user_IO.user_Output(ret) + user_IO.user_output(ret) diff --git a/user_IO.py b/user_IO.py index 14d2ad0..041d8bf 100644 --- a/user_IO.py +++ b/user_IO.py @@ -1,12 +1,15 @@ import Formeln -def user_Input(): + + +def user_input(): geg = {} ges = {} geginput = None gesinput = None while True: - geginput = input("Welche Formelzeichen sind gegeben? Geben Sie immer nur EINS ein! \n Bestätigen sie Ihre Eingaben mit 'Fertig'\n") + geginput = input("Welche Formelzeichen sind gegeben? Geben Sie immer nur EINS ein! \n" + " Bestätigen sie Ihre Eingaben mit 'Fertig'\n") if geginput == "Fertig": for symbol in geg: geg[symbol] = float(input("Geben Sie den Wert zu " + symbol + " ein.\n")) @@ -19,12 +22,11 @@ def user_Input(): return [geg, ges] -def user_Output(liste): +def user_output(liste): geg = liste[1][0] ges = liste[1][1] formel_str = liste[1][2].string formel_name = liste[1][2].name - #einsetzen von ergebnis in ges ges[list(ges.keys())[0]] = liste[0] print("\n\n\n\nDas Programm hat fertig gerechnet!") print("Dies war gegeben: ")