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/)
-   -   Delphi Sinus, Cosinus, Tangens...etc (https://www.delphipraxis.net/52607-sinus-cosinus-tangens-etc.html)

NeoDeluxe 31. Aug 2005 12:44


Sinus, Cosinus, Tangens...etc
 
Hi ich versuch in meinem Mathe programm sinus zu berechnen, aber irgendwie kommt nicht das was ich brauche.
Es gibt in Delphi, soweit ich es weiß, Sin und ArcSin.
Aber ich hab selbst in einem kleinem programm probiert diese auszurechnen und da kommt immer etwas anderes raus :(
Delphi-Quellcode:
 
  val(edit1.Text,zahl,code);
  wurzel:=Sin(zahl);
  edit2.Text:=FloatToStr(wurzel);
Zahl ist als extended deklariert...plz help :(

dizzy 31. Aug 2005 12:49

Re: Sinus, Cosinus, Tangens...etc
 
Delphi rechnet nicht in Grad, sondern im Bogenmaß. Hast du das bedacht?

sniper_w 31. Aug 2005 13:45

Re: Sinus, Cosinus, Tangens...etc
 
Delphi-Quellcode:
a:=45; // degrees
sin_a := sin( a * pi / 180 );

dizzy 31. Aug 2005 13:49

Re: Sinus, Cosinus, Tangens...etc
 
Alternativ: Delphi-Referenz durchsuchenDegToRad

BlackJack 31. Aug 2005 14:12

Re: Sinus, Cosinus, Tangens...etc
 
hast du auch den errorcode in "code" überprüft? ich weiss nicht ob die zahl die val zurückliefert definiert ist wenn ein error auftritt.

NeoDeluxe 1. Sep 2005 07:03

Re: Sinus, Cosinus, Tangens...etc
 
danke: @ sniper
aber wie ist das mit ArcSin, muss mal da auch *pi/180 oder umgekehrt?? :gruebel:

sniper_w 1. Sep 2005 07:17

Re: Sinus, Cosinus, Tangens...etc
 
Delphi-Quellcode:
sin_a := 0.7074333376; // es muss ein Wert zwischen -1..1 inklusiv -1 und 1 sein
a := ArcSin( sin_a ) * 180 / pi; // in degrees

Bart82 1. Sep 2005 07:20

Re: Sinus, Cosinus, Tangens...etc
 
Im Argument des ArcSin nicht, da der ArcSin die Umkehrfunktion des Sinus ist.
Das Ergebnis das du erhälst müsste aber im Bogenmas sein, wenn du das also in Grad haben willst musst du es wieder umrechnen.

NeoDeluxe 5. Sep 2005 07:40

Re: Sinus, Cosinus, Tangens...etc
 
Zitat:

Zitat von sniper_w
Delphi-Quellcode:
sin_a := 0.7074333376; // es muss ein Wert zwischen -1..1 inklusiv -1 und 1 sein
a := ArcSin( sin_a ) * 180 / pi; // in degrees

blah jetzt hab ich ein problem, da "sin_a" aus einem editfeld ausgelesen wird und man eingabe oft mit KOMMAzahlen eingibt und Delphi damit nicht rechnen kann sondern nur mit Punkt... :(

BrunoT 5. Sep 2005 07:48

Re: Sinus, Cosinus, Tangens...etc
 
Hi,

Versuch es mal mit:

Delphi-Quellcode:
Try
  sin_a:= StrToFloat(Edit1.Text);
except
  sin_a:=0;
end;
StrToFloat berücksichtigt den in den Ländereinstellungen vorgesehenen Dezimalseparator. Mit Try fängst Du ab, ob was unsinniges eingegeben wurde.

mfg

BrunoT


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:55 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