none
C# Math.Cos(var) rückgabe falsch. RRS feed

  • Frage

  • Hi!

    Bin gerade dabei eine Sinus-Kosinus-Tangens -Funktion zu basteln  (eig. ganz einfach) wenn man Math.Cos(var) benutzt... Dachte ich zumindest doch irgendwas macht mir einen Strich durch die Rechnung 

    Hier mal mein Code:

    display.Text = display.Text.Substring(0, display.Text.IndexOf('c')) + "(" +(Math.Cos(Convert.ToDouble(str))).ToString() + ")";

    display ist eine normale textbox und mit einen Substring filtere ich einfach den Kosinus aus der Angabe zB. 1+2+cos(90). Vereinfacht sieht der Code so aus:

    textBox.Text = (Math.Cos(Convert.ToDouble(str))).ToString(); // nicht ausgetestet

    str ist vom Datentyp ein object (muss so sein wegen einer vorherigen Verarbeitung) und hat den wert 90. cos(90) sollte 0 ergeben doch bei mir kommt eine negative Zahl heraus (-0,44807361612917).

    Ich habe leider keine Ahnung wo der Fehler liegen kann . ich habe es auch schon versucht mit der Umrechnung von Radiant zum Grad-maß.( * (180 / Math.PI)) Das Ergebnis ist dann -0,2995... also wieder falsch. Das ganze ist auch bei den anderen Winkelfunktionen und deren Umkehrfunktionen. Hat vielleicht irgendwer schon mal dieses Problem gehabt oder eine Idee dieses zu lösen? :)

    Gruß Dostal

    Sonntag, 18. Februar 2018 17:22

Antworten

  • Hi,
    Das Ergebnis von Cos(90) = -0.44807361612917013 ist ok. Der Wert 90 entspricht 90 Radian, d.h. 5156.6201561774087 Grad, d.h. 116.62015617740916 Grad (in der 15. Umdrehung).

    90 / (2 * Math.PI) ergibt 14.323944878270581 (Umdrehungen)

    2*Pi entspricht 360 Grad.

    90 * 360 / (2 * Math.Pi) ergibt 5156.6201561774087 (Grad)


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks




    Sonntag, 18. Februar 2018 17:58

Alle Antworten

  • Hi,
    Das Ergebnis von Cos(90) = -0.44807361612917013 ist ok. Der Wert 90 entspricht 90 Radian, d.h. 5156.6201561774087 Grad, d.h. 116.62015617740916 Grad (in der 15. Umdrehung).

    90 / (2 * Math.PI) ergibt 14.323944878270581 (Umdrehungen)

    2*Pi entspricht 360 Grad.

    90 * 360 / (2 * Math.Pi) ergibt 5156.6201561774087 (Grad)


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks




    Sonntag, 18. Februar 2018 17:58
  • Ui , vielen Dank hat mir weitergeholfen ;) 

    Gruß Dostal 

    Sonntag, 18. Februar 2018 19:18