Johannes: Sinus/Cosinus

Hallo liebes Forum,

ich habe eine Frage zu den Sinus und Cosinus-Funktionen in JavaScript.

Aus meiner Schulzeit habe ich das Thema in etwa noch so in Erinnerung, wie es auf diesen Seiten dargestellt wird:

http://did.mat.uni-bayreuth.de/~wn/ss_01/kurz/seminar/www.stud.uni-bayreuth.de/kurz/mathesem_ss01/mdidsem_ss01_node28.html

Das heißt, ich habe zum einen Gradzahlen. Das wäre der Normalfall in einem Taschenrechner. Gebe ich sinus(180) oder sinus(360) ein, müßte 0 herauskommen. Wähle ich im Taschenrechner statt Deg die Rad Funktion, wäre ein Sinusdurchlauf 2 PI, also sinus(2 PI) wäre 0. Gebe ich in einem JavaScript Programm Math.sin(360) oder Math.sin(Math.PI) ein, kommen aber Werte heraus, die ich nicht nachvollziehen kann. Könnte mir jemand sagen, was mit diesen Funktionen ausgerechnet wird? bzw. wie ich den Sinuswert einer Gradzahlzahl erhalte?

  1. Gebe ich in einem JavaScript Programm Math.sin(360) oder Math.sin(Math.PI) ein, kommen aber Werte heraus, die ich nicht nachvollziehen kann. Könnte mir jemand sagen, was mit diesen Funktionen ausgerechnet wird? bzw. wie ich den Sinuswert einer Gradzahlzahl erhalte?

    Math.sin(Math.Pi) stimmt eigentlich schon - dort muesste eigentlich null rauskommen.
    Tut es auch...fast ;)

    javascript: alert(Math.sin(Math.Pi))
    liefert irgendetwas sehr, sehr kleines bei mir (im 10 hoch -16 Bereich).
    Das nicht exakt Null raus kommt liegt an der Gleitkomma-Darstellung eines PCs, welche auch mich neulich zu verwirren vermochte:
    http://forum.de.selfhtml.org/archiv/2005/4/t106621/#m660975

    Abhilfe: z.b. die JavaScript- toFixed-Funktion 8die aber z.B. dem MACIE nicht schmeckt, wie ich neulich vfeststellen muisste :-/).

    Viele Grüße,
    Jörg

    1. Um himmels willen, noch mehr Rechtschreib-Fehler in einem Post gehen glaub ich fast nicht... :)

      Das nicht exakt Null raus kommt liegt an der Gleitkomma-

      8die aber z.B. dem MACIE nicht schmeckt, wie ich

      vfeststellen

      muisste

      Viele Grüße,
      Jörg

      Immerhin, meinen Namen habe ich richtig geschrieben ;)

      1. hi,

        Viele Grüße,
        Jörg

        Immerhin, meinen Namen habe ich richtig geschrieben ;)

        nein, petra, das hast du nicht.

        scnr,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
    2. Hi,

      javascript: alert(Math.sin(Math.Pi))

      Hm. Im Firefox liefert das NaN.
      Weil Math.Pi im Gegensatz zu Math.PI nicht definiert ist ...

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      Schreinerei Waechter
      Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
  2. Hallo,

    Gebe ich in einem JavaScript Programm Math.sin(360) oder Math.sin(Math.PI) ein, kommen aber Werte heraus, die ich nicht nachvollziehen kann. Könnte mir jemand sagen, was mit diesen Funktionen ausgerechnet wird? bzw. wie ich den Sinuswert einer Gradzahlzahl erhalte?

    Die Winkelfunktionen erwarten ihre Argumente im Bogenmaß -- also entsprechend umrechnen:

      
    var winkel=60; // Grad  
    var cosinus=Math.cos(winkel*Math.PI/180);  
    var sinus=Math.sin(winkel*Math.PI/180);  
    alert("sin("+winkel+")="+sinus+"\ncos("+winkel+")="+cosinus);
    

    MfG, Thomas

    1. Vielen Dank für die Antworten!