Seite 1 von 1

math: sin() ---> degrad??

Verfasst: Sonntag 26. Februar 2006, 18:18
von Hannes-Spz
Ich arbeite gerade mit dem Polarkoordinatensystem.

Dabei ergeben sich x und y eines Punktes wie folgt:

x = r * cos( WINKEL )
y = r * sin( WINKEL )

Leider habe ich festgestellt, dass diese Art von Berechnung in meinem
Program im "Degrad" - Modus erforderlich ist, wobei Pythons math-Modul
lediglich im "Radiant" - Modus arbeitet... glaub ich jedenfalls

Kann mir also bitte jemand einen Vorschlag machen,
wobei man die 180° als float eingibt (bei Sinus) und 0 erhält, bzw.
1 (bei Cosinus) erhält?

Danke im Voraus
Hannes

Verfasst: Sonntag 26. Februar 2006, 18:22
von modelnine

Code: Alles auswählen

from math import pi
x, y = r*cos(winkel*pi/180), r*sin(winkel*pi/180)
Ganz davon abgesehen nennt man den "Modus" (Du hast das Wort vom Taschenrechner, oder?) nicht Degrad, sondern einfach einen Winkel in Grad, während Python einen Winkel in Radianten (sprich 2pi = 360°) erwartet. Winkel in Radianten haben keine Einheit, was ihr großer Vorteil für die Analysis ist, und deswegen sind die mathematischen Funktionen im Normalfall auch für diesen Anwendungsfall definiert.

Verfasst: Sonntag 26. Februar 2006, 18:40
von Hannes-Spz
Wow, war ja mal wieder Rekordzeit :wink:
- Tausend Dank!
Es hat wunderbar funktioniert - ich bin einfach nicht drauf gekommen :oops:

(Modus... - Stimmt übrigens, ich saß ja auch die ganze Zeit mit dem
Taschenrechner vor dem PC :D )

liebe Grüße
Hannes

Verfasst: Sonntag 26. Februar 2006, 20:34
von mawe
Hi!

Das math Modul hat dafür auch die Funktionen degrees() und radians().

Gruß, mawe