From 50f8d199d12052726cbeae7f7a8c6a76f2ed8f13 Mon Sep 17 00:00:00 2001 From: Kommindiewhatsappgruppe Date: Wed, 24 Jul 2019 09:19:15 +0200 Subject: [PATCH 1/8] ggg --- .idea/misc.xml | 2 +- .idea/projekttage.iml | 2 +- Formeln.py | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.idea/misc.xml b/.idea/misc.xml index a2e120d..cddc448 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,4 @@ - + \ No newline at end of file diff --git a/.idea/projekttage.iml b/.idea/projekttage.iml index 6711606..ca6e323 100644 --- a/.idea/projekttage.iml +++ b/.idea/projekttage.iml @@ -2,7 +2,7 @@ - + diff --git a/Formeln.py b/Formeln.py index 811ba88..0277d02 100644 --- a/Formeln.py +++ b/Formeln.py @@ -21,7 +21,7 @@ Formeln = [k.Formel('Kraftformel', "F=m*a", i=k.Groesse('F', 'N', False), a=k.Gr y=k.Groesse(None, None, True, 2)), k.Formel('Elektrische Leistung', 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", i=k.Groesse ('v', 'm/s',False), a=k.Groesse('s', 'm', False), + 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', i=k.Groesse('R', 'Ohm', False), a=k.Groesse('U', 'V', False), From bf5282fcb67e9b89c393815c3a3ec62535ac6075 Mon Sep 17 00:00:00 2001 From: michelar Date: Wed, 24 Jul 2019 10:22:37 +0200 Subject: [PATCH 2/8] ruweigfiwgfihuidfsp98uf --- Formeln.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Formeln.py b/Formeln.py index 0277d02..6c780da 100644 --- a/Formeln.py +++ b/Formeln.py @@ -8,7 +8,7 @@ Formeln = [k.Formel('Kraftformel', "F=m*a", i=k.Groesse('F', 'N', False), a=k.Gr k.Formel('Gleichm. beschl. Bew.', i=k.Groesse('s', 'm', False), a=k.Groesse(None, None, True, 0.5), b=('a', 'm/s^2', False), c=k.Groesse('t', 's', False), z=konstante_eins, x=konstante_eins, y=k.Groesse(None, None, True, 2)), - k.Formel('Gewichtskraft', i=k.Groesse('Fg', 'N',False), a=k.Groesse(None,None,True,9.81),b=('h','m',False), + k.Formel('Gewichtskraft',"Fg=9,81*h", i=k.Groesse('Fg', 'N',False), a=k.Groesse(None,None,True,9.81),b=('h','m',False), c=konstante_eins, z=konstante_eins,y=konstante_eins,x=konstante_eins), k.Formel('Spannenergie', 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), x=konstante_eins, y=konstante_eins, From 1182f03de0be551621f06d6be48b078cd087d7dc Mon Sep 17 00:00:00 2001 From: stockth Date: Wed, 24 Jul 2019 10:27:16 +0200 Subject: [PATCH 3/8] t --- Formeln.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/Formeln.py b/Formeln.py index 6c780da..122ce48 100644 --- a/Formeln.py +++ b/Formeln.py @@ -3,31 +3,31 @@ import Klassen as k 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, + b=k.Groesse('a', 'm/s', False), c=konstante_eins, z=konstante_eins, y=konstante_eins, x=konstante_eins), - k.Formel('Gleichm. beschl. Bew.', 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=('a', 'm/s^2', False), c=k.Groesse('t', 's', False), z=konstante_eins, x=konstante_eins, y=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=('h','m',False), c=konstante_eins, z=konstante_eins,y=konstante_eins,x=konstante_eins), - k.Formel('Spannenergie', i=k.Groesse('Espann','J', False), a=k.Groesse(None, None, True, 0.5), + 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), x=konstante_eins, y=konstante_eins, z=k.Groesse(None, None, True, 2)), - k.Formel('Potentielle Energie', i=k.Groesse('Epot','J',False),a=k.Groesse('m','kg', False), + 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',i=k.Groesse('Ekin','J', False), a=k.Groesse(None, None, True, 0.5), + 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=('m', 'kg', False), c=('v', 'm/s', False), z=konstante_eins, x=konstante_eins, y=k.Groesse(None, None, True, 2)), - k.Formel('Elektrische Leistung', i=k.Groesse('P', 'W', False), a=k.Groesse('U', 'V', False), + 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', 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', 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) ] From c6005fc75bbab0414cab12e2b9d8509b5d3e9703 Mon Sep 17 00:00:00 2001 From: Lars Bogner Date: Wed, 24 Jul 2019 11:18:22 +0200 Subject: [PATCH 4/8] solvable --- Klassen.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Klassen.py b/Klassen.py index 239b2fe..ea0b02f 100644 --- a/Klassen.py +++ b/Klassen.py @@ -99,11 +99,10 @@ class Formel: def is_solvable(self, geg, ges): temp_liste = deepcopy(self.liste) for geg_element in geg: - for liste_element in temp_liste: + for i, liste_element in enumerate(temp_liste): if geg_element == liste_element.formelsymbol: - del() - pass - if len(temp_liste) == 1 and ges[0] == temp_liste[0]: # has to be changed accordingly + temp_liste.pop(i) + if len(temp_liste) == 1 and list(ges.keys())[0] == temp_liste[0]: return [True, temp_liste[0]] return [False, None] From dadf142c64529fd206c382484edde943498eda8c Mon Sep 17 00:00:00 2001 From: Lars Bogner Date: Wed, 24 Jul 2019 11:30:32 +0200 Subject: [PATCH 5/8] pep8 --- Formeln.py | 2 +- Klassen.py | 17 ++++++++++------- Main.py | 8 +++++--- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/Formeln.py b/Formeln.py index 811ba88..ee47741 100644 --- a/Formeln.py +++ b/Formeln.py @@ -37,4 +37,4 @@ def looper(geg, ges): for formel in Formeln: temp_is_solvable = formel.is_solvable(geg, ges) if temp_is_solvable[0]: - formel.solve(temp_is_solvable[1], [geg, ges]) \ No newline at end of file + return formel.solve(temp_is_solvable[1], [geg, ges]) \ No newline at end of file diff --git a/Klassen.py b/Klassen.py index ea0b02f..4dda321 100644 --- a/Klassen.py +++ b/Klassen.py @@ -109,20 +109,23 @@ class Formel: def solve(self, ges, dicts): temp_dicts = dicts temp_dicts.append(self) + ret = None self.solver.set_dicts(temp_dicts) if 'i' == ges.equals_var: - self.solver.solve_to_i() + ret = self.solver.solve_to_i() elif 'e' == ges.equals_var: - self.solver.solve_to_e() + ret = self.solver.solve_to_e() elif 'c' == ges.equals_var: - self.solver.solve_to_c() + ret = self.solver.solve_to_c() elif 'b' == ges.equals_var: - self.solver.solve_to_b() + ret = self.solver.solve_to_b() elif 'a' == ges.equals_var: - self.solver.solve_to_a() + ret = self.solver.solve_to_a() elif 'x' == ges.equals_var: - self.solver.solve_to_x() + ret = self.solver.solve_to_x() elif 'd' == ges.equals_var: - self.solver. solve_to_d() + ret = self.solver. solve_to_d() + + return ret diff --git a/Main.py b/Main.py index c79793b..39dc2cf 100644 --- a/Main.py +++ b/Main.py @@ -1,5 +1,7 @@ -#import Formeln +import Formeln import user_IO -#import Klassen +import Klassen while True: - _ = user_IO.user_Input() + dicts = user_IO.user_Input() + ret = Formeln.looper(dicts[0], dicts[1]) + user_IO.user_Output(ret) From 4cf876b477313d8bbe1959ff6e14b9bd09af3293 Mon Sep 17 00:00:00 2001 From: stockth Date: Wed, 24 Jul 2019 10:31:43 +0200 Subject: [PATCH 6/8] Bug fix --- Formeln.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Formeln.py b/Formeln.py index fc3dbb2..396fb64 100644 --- a/Formeln.py +++ b/Formeln.py @@ -6,7 +6,7 @@ Formeln = [k.Formel('Kraftformel', "F=m*a", i=k.Groesse('F', 'N', False), a=k.Gr 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), - b=('a', 'm/s^2', False), c=k.Groesse('t', 's', False), z=konstante_eins, x=konstante_eins, + b=k.Groesse('a', 'm/s^2', False), c=k.Groesse('t', 's', False), z=konstante_eins, x=konstante_eins, y=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=('h','m',False), c=konstante_eins, z=konstante_eins,y=konstante_eins,x=konstante_eins), From 3dceb68eabb171f630485c1c0dee6cfdac84e3a7 Mon Sep 17 00:00:00 2001 From: stockth Date: Wed, 24 Jul 2019 10:41:30 +0200 Subject: [PATCH 7/8] Bug Fix --- Formeln.py | 4 ++-- Klassen.py | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/Formeln.py b/Formeln.py index 396fb64..89ce97e 100644 --- a/Formeln.py +++ b/Formeln.py @@ -8,7 +8,7 @@ Formeln = [k.Formel('Kraftformel', "F=m*a", i=k.Groesse('F', 'N', False), a=k.Gr 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, x=konstante_eins, y=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=('h','m',False), + 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), x=konstante_eins, y=konstante_eins, @@ -17,7 +17,7 @@ Formeln = [k.Formel('Kraftformel', "F=m*a", i=k.Groesse('F', 'N', False), a=k.Gr 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=('m', 'kg', False), c=('v', 'm/s', False), z=konstante_eins, x=konstante_eins, + b=k.Groesse('m', 'kg', False), c=k.Groesse('v', 'm/s', False), z=konstante_eins, x=konstante_eins, y=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), diff --git a/Klassen.py b/Klassen.py index 4dda321..2ce2a6c 100644 --- a/Klassen.py +++ b/Klassen.py @@ -125,6 +125,16 @@ class Formel: ret = self.solver.solve_to_x() elif 'd' == ges.equals_var: ret = self.solver. solve_to_d() + elif 'e' == ges.equals_var: + ret = self.solver. solve_to_e() + elif 'f' == ges.equals_var: + ret = self.solver. solve_to_f() + elif 'g' == ges.equals_var: + ret = self.solver. solve_to_g() + elif 'y' == ges.equals_var: + ret = self.solver. solve_to_y() + elif 'z' == ges.equals_var: + ret = self.solver. solve_to_z() return ret From d8155b03e6c4d2506404d31494b31114e350067f Mon Sep 17 00:00:00 2001 From: stockth Date: Wed, 24 Jul 2019 11:03:07 +0200 Subject: [PATCH 8/8] t --- Klassen.py | 4 ++-- user_IO.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Klassen.py b/Klassen.py index 2ce2a6c..89e0d90 100644 --- a/Klassen.py +++ b/Klassen.py @@ -36,7 +36,7 @@ class Formel: return [((self.formel.b**self.formel.y) * (self.formel.c**self.formel.x) + self.formel.d * self.formel.e *self.formel.f + self.formel.g * self.formel.i)**1/self.formel.z, self.get_dicts()] def solve_to_b(self): - return [((self.formel.a**self.formel.z) * (self.formel.c**self.formel.x) +self.formel.d *self.formel.e *self.formel.f + self.formel.g)**1/self.formel.y, self.get_dicts()] + return [((self.formel.a.wert**self.formel.z.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)**1/self.formel.y.wert, self.get_dicts()] def solve_to_c(self): return [((self.formel.a**self.formel.z) * (self.formel.b**self.formel.y) + self.formel.d *self.formel.e *self.formel.f +self.formel.g * self.formel.i)**1/self.formel.x, self.get_dicts()] @@ -102,7 +102,7 @@ class Formel: for i, liste_element in enumerate(temp_liste): if geg_element == liste_element.formelsymbol: temp_liste.pop(i) - if len(temp_liste) == 1 and list(ges.keys())[0] == temp_liste[0]: + if len(temp_liste) == 1 and list(ges.keys())[0] == temp_liste[0].formelsymbol: return [True, temp_liste[0]] return [False, None] diff --git a/user_IO.py b/user_IO.py index b684b45..5fda594 100644 --- a/user_IO.py +++ b/user_IO.py @@ -9,12 +9,12 @@ def user_Input(): 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.")) + geg[symbol] = float(input("Geben Sie den Wert zu " + symbol + " ein.\n")) break else: geg[geginput] = None - gesinput = input("Welches Formelzeichen sind gesucht?") + gesinput = input("Welches Formelzeichen sind gesucht?\n") ges[gesinput] = None return [geg, ges]