WisFaq!

\require{AMSmath} geprint op maandag 29 april 2024

Inverse cos

Ik moet voor informatica een programmatjes schrijven voor het berekenen van moment, nu dat is net echt een probleem want het is bijna klaar maar mijn probleem is dat ik de inverse cosinus moet nemen, Nu dat zou normaal geen probleem mogen vormen maar wij werken op school nog met turbo pascal en daar kan je de cos-1 niet nemen, de leraar informatica zei mij dat er een mogelijkheid is om dit te doen met de sin de cos en de bgtan maar ik zou niet weten hoe ik daar aan moet beginnen!!!
Kunnen jullie mij helpen ?

van lancker pieter
26-9-2002

Antwoord

Wiskundigen spreken wel over de Arccosinus of Boogcosinus... De volgende functie doet het in ieder geval prima!
FUNCTION ArcCos(r:REAL;
VAR error:BOOLEAN):REAL;
BEGIN
error:=TRUE;
ArcCos:=0;
IF (r>1) OR (r<-1) THEN EXIT;
error:=FALSE;
IF Gelijk(r,1) THEN ArcCos:=0
ELSE IF Gelijk(r,-1)THEN ArcCos:=pi
ELSE ArcCos:=-ArcTan(r/SQRT(-r*r+1))+0.5*pi
END;
Hierbij is de functie Gelijk iets als:
FUNCTION Gelijk(R1,R2:REAL):BOOLEAN;
BEGIN
Gelijk:=FALSE;
IF ABS(R1-R2)<1e-6 THEN Gelijk:=TRUE
END;
Dit laatste is vooral om te verkomen dat het programma vastloopt als r bijna 1 of -1 is, want dat willen we natuurlijk niet..:-) Je gebruikt hierbij dus de 'ingebouwde' functie ArcTan.

WvR
26-9-2002


© 2001-2024 WisFaq
WisFaq - de digitale vraagbaak voor het wiskunde onderwijs - http://www.wisfaq.nl

#4473 - Software - 3de graad ASO