Hallo, brauche Rat beim erstellen einer Funktion V2.7.3
Verfasst: Sonntag 17. März 2013, 22:41
Hallo Programmierlinge !
Ich habe vor ein paar tagen mit Python angefangen. Nun will ich versuchen ein kleines Programm zu schreiben das ein paar Formeln der Physik ausrechnet. Hier erst mal der Code :
Bitte nicht lachen wenn das zu bekloppt aussieht 
Ich will da noch viel mehr einbauen, das soll erst mal der Prototyp sein für meine ersten Versuche.
Das ist der Fehler den ich bekomme:
Traceback (most recent call last):
File "ex1.py", line 19, in <module>
calculate_one(t)
File "ex1.py", line 12, in calculate_one
return (10/2)*t*t
TypeError: can't multiply sequence by non-int of type 'str'
Und zwar will ich das Programm so schreiben das ich möglichst viel von dem Zeug das ich gelesen hab dort verwenden kann. Ich hab mir überlegt das ich jeweils die Formeln als eigene Funktionen definiere, also die Rechenvorschrift in der Funktion ist, und diese Funktion dann den Wert ausgiebt. Der Fehler liegt jetzt also hier dran:
und eben an dem
Also ich hoffe man versteht was ich meine, ist irgendwie schwer zu erklären. Ich weiß das ich diese Berechnungen auch einfacher machen kann, ich will aber mit diesen Funktionen üben damit ich ein Gefühl dafür bekommen kann, daher diese Aufwand.
Kann mir da jemand helfen?
Lg
Ich habe vor ein paar tagen mit Python angefangen. Nun will ich versuchen ein kleines Programm zu schreiben das ein paar Formeln der Physik ausrechnet. Hier erst mal der Code :
Code: Alles auswählen
version = "Version 1.0"
print "Physikprogramm, %s " % version
physikthemen = ["Mechanik", "Thermodynamik"]
mechanik = ["Senkrechter Wurf"]
thermodynamik = ["Gasgleichung"]
print "Was moechten Sie berechnen? "
for themen in physikthemen:
print themen
a = raw_input("> ")
def calculate_one(t):
return (10/2)*t*t
if a == physikthemen[0]:
for themen in mechanik:
print themen
print "Berechnung der Strecke mit g : "
t = raw_input("Nach wieviel Sekunden ?\n> ")
calculate_one(t)
elif a == physikthemen[1]:
for themen in thermodynamik:
print themen
print "Berechnung des Volumens bei konstanter Dichte: "
raw_input("Druck?\n>")
else:
print "Abbruch"
Ich will da noch viel mehr einbauen, das soll erst mal der Prototyp sein für meine ersten Versuche.
Das ist der Fehler den ich bekomme:
Traceback (most recent call last):
File "ex1.py", line 19, in <module>
calculate_one(t)
File "ex1.py", line 12, in calculate_one
return (10/2)*t*t
TypeError: can't multiply sequence by non-int of type 'str'
Und zwar will ich das Programm so schreiben das ich möglichst viel von dem Zeug das ich gelesen hab dort verwenden kann. Ich hab mir überlegt das ich jeweils die Formeln als eigene Funktionen definiere, also die Rechenvorschrift in der Funktion ist, und diese Funktion dann den Wert ausgiebt. Der Fehler liegt jetzt also hier dran:
Code: Alles auswählen
def calculate_one(t):
return (10/2)*t*t Code: Alles auswählen
calculate_one(t)Kann mir da jemand helfen?
Lg