Gleitkommadarstellung in MuPAD < MuPad < Mathe-Software < Mathe < Vorhilfe
|
Hallo,
ich hätte einmal eine Frage zur Gleitkommadarstellung in MuPAD: Ich möchte die Approximation der Eulerschen Zahl e durch die Reihendarstellung [mm] (1+1/n)^n [/mm] mit steigendem n (in den Schritten [mm] 10^0, 10^1, 10^2, [/mm] ...) ermitteln. Es sollen dabei jeweils Gleitkommazahlen verwendet werden. Die sicher einfachste Möglichkeit dazu wäre sicher:
DIGITS:=10:
[mm] n:=10^5:
[/mm]
[mm] float((1+1/n)^n)
[/mm]
Das Problem dabei ist, dass schon in Größenordnungen ab [mm] n:=10^5 [/mm] die Rechenzeit unheimlich ansteigt. Außerdem habe ich auch mal eine Schleife geschrieben, die bei jeder Erhöhung von n eine Fehlerabweichung zur korrekten Darstellung angibt:
DIGITS:=20:
fehler2:=0:
for n from 1 to 40 do
[mm] gleitkommadarstellung:=float(1+1/(10^n))^{10^n}:
[/mm]
fehler2:=fehler1:
fehler1:=float(E)-gleitkommadarstellung:
if (fehler1>fehler2)
then
print(Unquoted, "Ab hier wird der Fehler größer!"),
break
end_if:
print(Unquoted,"Mit 10^",n," ergibt die Gleitkommadarstellung:",_ gleitkommadarstellung),
print(Unquoted,"Es ergibt sich zur korrekten Darstellung ein Fehler_ von",fehler)
end_for:
Seltsamerweise benötigt MuPAD bei dieser Schleife bedeutend weniger Rechenzeit als bei der ersten Darstellung. Kann mir das jemand erklären?
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 20:20 Di 26.05.2009 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|