Funktion COSINUS in Clipper
Ersatz für Funktion COS() in CA-Clipper Tools III
FUNCTION COSINUS(zahl,trigmode) LOCAL incr := 0 LOCAL pi := 3.14159265358979323846 LOCAL v0 := 0 LOCAL v1 := 0 LOCAL v3 := 0 LOCAL v4 := 0 LOCAL v5 := 0 LOCAL x := 0 IF UPPER(trigmode)=="DEG" x=zahl ELSEIF UPPER(trigmode)=="RAD" x=zahl*pi/180 ELSE x=zahl ENDIF v0=x IF x<0 x=-x ENDIF x=x/(2*pi) x=(x-INT(x))*8 DO WHILE x>=1.0 x=x*0.5 incr++ ENDDO v1=x*x v3=(v1*0.026247864594320)-17.805645714386 v4=((v3*v1)+1038.5171455198)*x v5=((v1-181.2832834854)*v1)+2644.5621951222 x=v4/v5 DO WHILE incr>0.5 x=(x+x)/(1-(x*x)) incr-- ENDDO IF v0<0 x=-x ENDIF x=x*x x=(1-x)/(1+x) RETURN(x)
original work for dBase II 7.2.1986 by Dave C. Oshel, Ames, Iowa.
from the Ashton-Tate "Advanced Programmer's Guide", pp. 460-462.
coming from an article in MICROSYSTEMS 4 (December, 1983), by Lurie.
after the algorithms in Hart et al, "Computer Approximations", Kreiger, 1978.