Kijk! Daar hebben we wat aan! Ik heb dus maar even voor je opgezocht. Wie wat bewaart heeft wat. Hieronder zie je de implementatie in TURBOPASCAL van de functies ASIN() en ACOS():FUNCTION ArcSin(r:REAL;VAR error:BOOLEAN):REAL;
BEGIN
error:=TRUE;
ArcSin:=0;
IF (r1) OR (r-1) THEN EXIT;
error:=FALSE;
IF Gelijk(r,1) THEN ArcSin:=pi/2
ELSE IF Gelijk(r,-1) THEN ArcSin:=3*pi/2
ELSE ArcSin:=ArcTan(r/SQRT(-r*r+1))
END;
FUNCTION ArcCos(r:REAL;VAR error:BOOLEAN):REAL;
BEGIN
error:=TRUE;
ArcCos:=0;
IF (r1) 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;
In jouw programmatuur moet je dan ArcTan() vervangen door ATAN(). Ik denk dat je er wel uitkomt toch? Zo niet, laat maar even weten!
WvR
dinsdag 7 december 2010