e hoch x berechnen
Verfasst: Dienstag 25. Oktober 2016, 18:26
Hallo! Ich soll an der Uni Fortran lernen und möchte privat gerne Python lernen. Deshalb würde ich gerne die Programmieraufgaben sowohl in Fortran als auch in Python lösen und hier die Python-Variante kontrollieren lassen (falls das in Ordnung ist
).
Ok, meine erste Aufgabe: Ein Programm schreiben, welches e hoch x mit Hilfe der Taylor-Reihe (Summe über x^(i)/i!) mit doppelt genauer reeller Gleitkommaarithmetik berechnet. Dabei soll ich die Summation abbrechen, sobald die Summanden bei der Rechnung so klein werden, dass keine Veränderung der Summe mehr auftritt.
Hier mein Versuch:
Leider stimmt das Ergebnis nicht, für e hoch 2 kommt z.B. 6.38905609893 raus, also 1 zu wenig.

Ok, meine erste Aufgabe: Ein Programm schreiben, welches e hoch x mit Hilfe der Taylor-Reihe (Summe über x^(i)/i!) mit doppelt genauer reeller Gleitkommaarithmetik berechnet. Dabei soll ich die Summation abbrechen, sobald die Summanden bei der Rechnung so klein werden, dass keine Veränderung der Summe mehr auftritt.
Hier mein Versuch:
Code: Alles auswählen
def e_hoch_x(x):
y = 1.0
summe = 0
i = 1
while True:
alte_summe = summe
y = y*x/i
summe += y
if alte_summe == summe:
break
i += 1
return summe
def main():
x = int(raw_input("x = "))
print "e^{}: {}".format(x, e_hoch_x(x))
if __name__ == '__main__':
main()