Seite 1 von 1

Winkelfunktionen zu genau/ungenau

Verfasst: Montag 11. Juni 2007, 10:37
von Windtommyhoff
Hallo zusammen.

Ich hab im Moment folgendes Problem, dass ich mit meinem Programm Werte über die Winkelfunktionen (Sinus Cosinus) errechne. Und das passiert in Grad schritten für eine ganze Umdrehung. Jetzt geschieht es aber, dass der errechnete Wert bei 0° nicht gleich ist wie der Wert bei 360°! Weil für python der sin von 2*pi nicht gleich der sinus von 0, also 0 ist, sondern irgendein infinitisimal kleiner Wert ......e-16! Wenn ich allerdings damit weiter rechne gibts bei den Werten die Differenz von h(0°)=4 und h(360°)=3.795. Das ist für mich allerdings mehr als ungenügend!

Kann mir jemand ne Funktion/nen Trick nennen, mit dem ich auch für h(360°) =4 heraus bekomme?

Danke schonmal für jede Art von Antwort,
Windtommyhoff

Verfasst: Montag 11. Juni 2007, 11:21
von BlackJack
Grosszügig runden. ;-)

Verfasst: Montag 11. Juni 2007, 11:23
von Windtommyhoff
Auf die Idee war ich grad auch schon gekommen. Sieht nur nicht so schön aus, wenn ich der Formel_Text Datei auf einmal ein round(...,4) oder so steht, wo der Enduser dann nichts mit anfangen kann.

Verfasst: Montag 11. Juni 2007, 12:07
von mitsuhiko
Naja. Computer haben keine genauen Fließkommazahlen. Da hilft nur Runden

Verfasst: Montag 11. Juni 2007, 12:45
von Michael Schneider
Hi,

es gibt noch was einfacheres: mod

Code: Alles auswählen

sin(x%360)
Das kann man machen, da 0° per mathematischer Definition = 360° ist. :-)

Grüße,
Michael

Verfasst: Montag 11. Juni 2007, 12:46
von birkenfeld
Ja, die Freuden der numerischen Programmierung...

Pi kann nicht exakt dargestellt werden, die Sinusfunktion wird auch nur approximiert, und dann auch noch Fließkommazahlen *seufz*