Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Sinus, Cosinus, Tangens (https://www.delphipraxis.net/148965-sinus-cosinus-tangens.html)

Delphi Freak 11. Mär 2010 13:10


Sinus, Cosinus, Tangens
 
Hallo,

ich will Sinus, Cosinus und Tangens von meinem Programm ausrechnen lassen, die Befehle sind ja entsprechend Sin(x), Cos(x) und Tan(x), so weit bin ich schon, nur sind die Werte dann im Winkelmaß angegeben und ich hätte sie gerne im Gradmaß, du Funktion dazu heißt ja: RadToDeg; so weit hab ichs auch schon, aber trotzdem kommen voll die komischen Werte raus. Zum Beispiel bei Sinus von 30° kommt bei mir -56,6100420859772 raus, eigentlich müsste ja 0,5 rauskommen!
Hier noch mein Quelltext:

Delphi-Quellcode:
procedure TForm1.BuSinusClick(Sender: TObject);
begin
  x := StrToFloat(Edit.Text);
  z := RadToDeg(Sin(x));
  Edit.Text := FloatToStr(z);
end;
Ich hoff, ihr könnt mir sagen, wo mein Fehler ist! Danke schon im voraus!
MfG
Florian

Matze 11. Mär 2010 13:14

Re: Sinus, Cosinus, Tangens
 
Hallo,

da du die 30° vorgibst, musst du diese zuerst ins Bogenmaß umrechnen lassen:

Delphi-Quellcode:
z := RadToDeg(Sin(DegToRad(x)));

Wolfgang Mix 11. Mär 2010 13:18

Re: Sinus, Cosinus, Tangens
 
... oder sin(alpha*pi/180)

jfheins 11. Mär 2010 13:20

Re: Sinus, Cosinus, Tangens
 
Zitat:

Zitat von Matze
Hallo,

da du die 30° vorgibst, musst du diese zuerst ins Bogenmaß umrechnen lassen:

Delphi-Quellcode:
z := RadToDeg(Sin(DegToRad(x)));

Aber bitte nicht das Ergebnis vom Sinus umrechnen wollen ;)

Delphi-Quellcode:
z := sin(DegToRad(x));

LargoD 11. Mär 2010 13:20

Re: Sinus, Cosinus, Tangens
 
Zitat:

Zitat von Matze
Hallo,

da du die 30° vorgibst, musst du diese zuerst ins Bogenmaß umrechnen lassen:

Delphi-Quellcode:
z := RadToDeg(Sin(DegToRad(x)));

Nö, aber so:

Delphi-Quellcode:
z := Sin(DegToRad(x));
Gruß
Erich

Matze 11. Mär 2010 13:22

Re: Sinus, Cosinus, Tangens
 
@Julius und Erich: Ihr habt natürlich recht. Mich hat der Code von Florian durcheinander gebracht. :wall:

Delphi Freak 11. Mär 2010 13:45

Re: Sinus, Cosinus, Tangens
 
@ jfheins & LargoD: Danke für die schnelle Hilfe, jetzt tuts!
@ wolfgang mix: deine Formel verstehe ich nicht, kannst du mir sie vllt auch erklären? Was ist alpha?

MfG
Florian

rollstuhlfahrer 11. Mär 2010 13:52

Re: Sinus, Cosinus, Tangens
 
Alpha ist der Winkel im Gradmaß. Winkel im Gradmaß werden normalerweise in der Matehematik mit Alpha, Beta, Gamma, Delta, Epslilon angegeben. Hier sollte eigentlich die Anzahl der Winkelnamen ausreichen. Bei Winkeln im Bogenmaß spricht man normalerweise von Phi. Umrechnen tut man den Winkel vom Gradmaß in das Bogenmaß mit Winkel*PI/180 und zurück ins Gradmaß mit Winkel/180*PI. Dies machen die Funktionen DegToRad und RadToDeg machen intern nichts anderes. Einfach mal in der Unit Math nachgucken.

Bernhard

Delphi Freak 11. Mär 2010 13:57

Re: Sinus, Cosinus, Tangens
 
Danke Bernhard, also ist alpha nichts anderes, als mein x?

rollstuhlfahrer 11. Mär 2010 14:09

Re: Sinus, Cosinus, Tangens
 
jap


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:06 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz