AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Code-Bibliothek Neuen Beitrag zur Code-Library hinzufügen Delphi Trigonometrische Funktionen im Gradmaß

Trigonometrische Funktionen im Gradmaß

Ein Thema von Wolfgang Mix · begonnen am 21. Jul 2009 · letzter Beitrag vom 9. Aug 2009
Antwort Antwort
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#1

Trigonometrische Funktionen im Gradmaß

  Alt 21. Jul 2009, 15:41
Bei der Frage nach dem Bogenmass finde ich immer wieder fragende Gesichter.
Hier kann man sich schlau machen:

http://de.wikipedia.org/wiki/Bogenma%C3%9F

Gemäß Dreisatz gilt:

alpha(bogen)/alpha(grad)=2*PI/360 Grad
oder
alpha(bogen)=alpha(grad)*PI/180 Grad

woraus folgt:

Delphi-Quellcode:
function sinus(alpha:real):real;
var bogen:real;
begin
   bogen:=alpha*pi/180;
   sinus:=sin(bogen);
end;

function cosinus(alpha:real):real;
var bogen:real;
begin
   bogen:=alpha*pi/180;
   cosinus:=cos(bogen);
end;

function tangens(alpha:real):real;
var bogen:real;
begin
  bogen:=alpha*pi/180;
  tangens:=(sin(bogen)/cos(bogen));
end;

function cotangens(alpha:real):real;
var bogen:real;
begin
    bogen:=alpha*pi/180;
    cotangens:=cos(bogen)/sin(bogen);
end;
Anmerkung:
Bei den Funktionen Tangens und Cotangens wird eventuell durch Null geteilt.
Das muss der Programmierer natürlich abfangen!
Wer es noch einfacher will, schaut sich bitte die Delphi-Funktionen DegToRad
und RadToDeg aus der Unit Math an. Beispiele findest du hier:

http://www.delphibasics.co.uk/ByUnit.asp?Unit=Math
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Trigonometrische Funktionen im Gradmaß

  Alt 21. Jul 2009, 18:23
Jedes mal, wenn der Parameter Alpha den Wert 0 hat, wird letztendlich durch 0 geteilt.
Edit: Alpha vergessen
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#3

Re: Trigonometrische Funktionen im Gradmaß

  Alt 21. Jul 2009, 19:12
Das stimmt so nicht ganz.
Aufpassen muß man bei tangens(90) bzw. tan(pi/2) und
bei cotangens(180) bzw. cot(pi) und Faktoren davon oder einfacher,
wenn das Ergebnis des Nenners Null wird.

mfg
Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.706 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Trigonometrische Funktionen im Gradmaß

  Alt 21. Jul 2009, 19:29
IMHO ist das Prinzip dieser Routinen fragwürdig - trigonometrische Funktionen fressen nun mal Bogenmaß (oder spucken es aus, jenachdem ). Ich finde es besser, intern durchgehend mit Bogenmaß zu arbeiten, und an wenigen, genau definierten Stellen (Schnittstelle zum Benutzer o.ä.) mit DegToRad und RadToDeg umzuwandeln.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Trigonometrische Funktionen im Gradmaß

  Alt 21. Jul 2009, 19:39
Deine Meinung kann man so gelten lassen. Dazu kommt, daß im wirklichen Leben die trigonometrischen Funktionen aus Taylor'schen Reihen abgeleitet werden, unabhängig von Programmiersprache und Plattform.
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Trigonometrische Funktionen im Gradmaß

  Alt 9. Aug 2009, 16:23
Der Vollstndigkeit halder poste ich noch die Arcusfunktionen in Gradmaß.
Die mathematischen Zusammenhänge findet ihr im Anhang (Quelle: Gieck - Technische Formelsammlung).
Ungültige Übergabewerte müßt ihr selber abfangen.

Nicht vergessen: Unit math einbinden!

Delphi-Quellcode:
implementation

{$R *.dfm}

function ArcSinus(x:real):real;
begin
    Result:=arcsin(x)*180/pi;
end;

function ArcCosinus(x:real):real;
begin
    Result:=arccos(x)*180/pi;
end;

function ArcTangens(x:real):real;
begin
    Result:=arctan(x)*180/pi;
end;

function ArcCotangens(x:real):real;
begin
    Result:=arctan(1/x)*180/pi;
end;
Angehängte Dateien
Dateityp: pdf arcus_187.pdf (13,1 KB, 8x aufgerufen)
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:21 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf