Math.sin() liefert falschen Wert
falko
- javascript
0 Struppi0 MudGuard0 Sven Rautenberg0 Maik
nein ich versuche nicht die javasript Math.sin() funktion mit gradmass zu füttern... (siehe archiv 99, 02!)
ich will den sinus z.B. von 180° berechen und erhalte: 1.2246063538223773e-16 und das ist leider nicht (ganz) null!!
brauchen mathematiker nie mehr als 180 grad!?
wer kann mich erleuchten!?
anbei die kommandozeile zum selber testen! ;)
javascript:var deg=180; var rad=deg*Math.PI/180;alert(Math.sin(rad));
nein ich versuche nicht die javasript Math.sin() funktion mit gradmass zu füttern... (siehe archiv 99, 02!)
ich will den sinus z.B. von 180° berechen und erhalte: 1.2246063538223773e-16 und das ist leider nicht (ganz) null!!
Kann nur daran liegen wie Computer rechnen.
http://www.dcljs.de/faq/antwort.php?Antwort=rechnen_rechnen
Struppi.
Hi,
ich will den sinus z.B. von 180° berechen und erhalte: 1.2246063538223773e-16 und das ist leider nicht (ganz) null!!
Willkommen im Land der numerischen Mathematik.
Reelle Zahlen können mit endlich viel Speicherplatz nicht exakt dargestellt werden, daher kommt es in fast allen Fällen zu Ungenauigkeiten.
cu,
Andreas
Moin!
nein ich versuche nicht die javasript Math.sin() funktion mit gradmass zu füttern... (siehe archiv 99, 02!)
ich will den sinus z.B. von 180° berechen und erhalte: 1.2246063538223773e-16 und das ist leider nicht (ganz) null!!
Der Sinus von Pi wäre Null. Computer rechnen aber nur mit endlichen Zahlen, also kannst du niemals den Sinus von Pi berechnen, sondern nur von 3,141592653589793. Außerdem rechnet die Sinus-Funktion auch keinen echten Sinus aus, sondern höchstwahrscheinlich nur eine polynomiale Funktion höheren Grades, die den Sinus im definierten Wertebereich hinreichend genau nachbildet.
Außerdem: 1,2e-16 ist ziemlich nahe an Null dran. Mehr kannst du von Computern nicht erwarten!
- Sven Rautenberg
ich will den sinus z.B. von 180° berechen und erhalte: 1.2246063538223773e-16 und das ist leider nicht (ganz) null!!
Willst Du Raketen in fremde Galaxien lenken? ;-)