Post Reply 
Algorithms for trig. on scientific calculators ?
12-09-2024, 10:59 PM
Post: #11
RE: Algorithms for trig. on scientific calculators ?
(12-06-2024 02:58 PM)Commie Wrote:  I have used the Pade algorithm in a hp45 clone and it works well. The sine approx., I provided has a range greater than what you specify i.e., [-pi/2, pi/2], pi/2 is worst case approx., the equation I showed/derived becomes more accurate as you get closer to zero, maximum accuracy for the given equation.
Also, due to the symmetry of sine waves, one can double the dynamic range by including an if/then/else construct preceeding the main equation whose range then extends to [-pi,pi] which is a complete wave of 360 deg. or 2.pi. The first step in calculating sine is to remove all the sine circles first.

Minimax Polynomials are another technique for approximating mathematical functions. I have used them to implement all the basic trigonometric functions and their inverses on the HP 12c Platinum:

(12c Platinum) Fast & Accurate Trigonometric Functions

There is an excellent paper on this and other methods, Faster Math Functions, by Robin Green of Sony Computer Entertainment America, but I can't find a link to it right now. His slide presentantions might give an idea, though:

Faster Math Functions - Part 2

Faster Math Functions - Part 1

Apparently that is the same method used by Microsoft in their first 8-bit BASIC interpreters, like the MSX computer BASIC implementation.

From "The MSX Red Book":
(Avalon Software. The MSX Red Book. Pangbourne: Kuma Computers, [c.1985].)

Quote:... The function is then computed by polynomial
approximation (2C88H) using the list of coefficients at 2DEFH.
These are the first eight terms in the Taylor series X-
(X^3/3!)+(X^5/5!)-(X^7/7!) ... with the coefficients multiplied
by successive factors of 2*PI to compensate for the initial
scaling.


...


... The function (ATN) is computed by polynomial approximation (2C88H)
using the list of coefficients at 2E30H. These are the first
eight terms in the Taylor series X-(x^3/3)+(X^5/5)-(X^7/7) ...
with the coefficients modified slightly to telescope the
series.

...

2DEFH 8 SIN
2DF0H -.69215692291809
2DF8H 3.8172886385771
2E00H -15.094499474801
2E08H 42.058689667355
2E10H -76.705859683291
2E18H 81.605249275513
2E20H -41.341702240398
2E28H 6.2831853071796
2E30H 8 ATN
2E31H -.05208693904000
2E39H .07530714913480
2E41H -.09081343224705
2E49H .11110794184029
2E51H -.14285708554884
2E59H .19999999948967
2E61H -.33333333333160
2E69H 1.0000000000000



these imply

sin(x) ~ x - x^3/6.000000000000256 + x^5/120.0000000008265 - x^7/5040.000004584301 + x^9/362880.0369065691 - x^11/39917178.42757230 + x^13/6231366410.303893 - x^15/1356730094045.503

(Maximum absolute error in the range [-π/6..π/6]: 2e-16)

and

atan(x) ~ x - x^3/3.000000000015600 + x^5/5.000000012758250 - x^7/7.000002808107966 + x^9/9.000256718258997 - x^11/11.01158689035767 + x^13/13.27895175277446 - x^15/19.19867088430851

(Maximum absolute error in the range [-(2-√3)..(2-√3)]: 5e-16)

The following Pascal code more or less replicates the algorithm used in the RPN program for the HP 12c Platinum.

Code:

Program Trigs;
{ Gerson Wasicki Barbosa - Dec/2007 }
{ Trigonometric and inverse trigonometric functions (17-digit accuracy) }
{ To be compiled in TurboBCD (TurboPascal v3.02 }
{ Running times: Sin, Cos: 160.5 us;  Tan: 321.0 us @ 500 MHz }
{ All angles in DEGREES }

var    x: Real;
     txt: Text;

function Sqrt(x: Real): real;

var sq, t: Real;

begin
  if x<>0 then
    begin
      sq:=x/2;
      repeat
        t:=sq;
        sq:=(sq+x/sq)/2
      until sq=t;
      Sqrt:=sq
    end
    else
      Sqrt:=0
end;

function Intg(x: Real): Real;

var r: Real;

begin
  r:=Int(x);
  if x<0 then r:=r-1;
  Intg:=r
end;

function Mdl (x, y: Real): Real;

begin
  Mdl:=x-y*Intg(x/y)
end;

function Sign(x: Real): Integer;

begin
  if x<>0 then
      Sign:=Trunc((x)/Abs(x))
    else
      Sign:=0
end;

function Sin(x: Real): Real;

const A =  5.81776417331443192E-03;
      B = -3.28183761370851117E-08;
      C =  5.55391614470475312E-14;
      D = -4.47571324262354212E-20;
      E =  2.10398182046943194E-26;
      F = -6.47383342002944734E-33;
      G =  1.40457976326925111E-39;
      H = -2.25584840859272218E-46;

var sn,x2: Real;

begin
  x:=Mdl(x,360);
  if x>90
    then
      if x<270
        then
          x:=180-x
        else
          x:=x-360;
  x2:=x*x;
  sn:=x*(A+x2*(B+x2*(C+x2*(D+x2*(E+x2*(F+x2*(G+H*x2)))))));
  Sin:=sn*(3-4*sn*sn)
end;

function Cos(x: Real): Real;
begin
  Cos:=Sin(90-x)
end;

function Tan(x: Real): Real;
begin
  if Mdl(x,180)<>90
    then
       Tan:=Sin(x)/Cos(x)
    else
       Tan:=Sign(x)*9.99999999999999999E+49
end;

function ArcTan(x: real): Real;

const PI_2 =  1.57079632679489662E+00;    { pi/2 }
      PI_6 =  0.52359877559829887E+00;    { pi/6 }
      SQR3 =  1.73205080756887729E+00;    { sqrt(3) }
      TMS3 =  2.67949192431122706E-01;    { 2 - sqrt(3) }
       R2D =  5.72957795130823209E+01;    { 180/pi }
         A =  1.00000000000000000E+00;
         B = -3.33333333333333320E-01;
         C =  1.99999999999969080E-01;
         D = -1.42857142845613967E-01;
         E =  1.11111109453593870E-01;
         F = -9.09089712757808854E-02;
         G =  7.69182100185790154E-02;
         H = -6.65496746226271243E-02;
         I =  5.71652168403095978E-02;
         J = -3.95856057285009705E-02;

var at, k1, k2, x2: real;
            s1, s2: integer;

begin
  s1:=Sign(x);
  x:=Abs(x);
  if x<1 then
      begin
        s2:=1;
        k1:=0
      end
    else
      begin
        x:=1/x;
        s2:=-1;
        k1:=PI_2
      end;
  if x>TMS3
    then
      begin
        x:=(x*SQR3-1)/(x+SQR3);
        k2:=PI_6
      end
    else
      k2:=0;
  x2:=x*x;
  at:=x*(A+x2*(B+x2*(C+x2*(D+x2*(E+x2*(F+x2*(G+x2*(H+x2*(I+J*x2)))))))));
  ArcTan:=(k1+s2*(k2+at))*s1*R2D
end;

function ArcSin(x: real): real;

begin
  if Abs(x)<=1
    then
      if Abs(x)<1
        then
          ArcSin:=ArcTan(x/(Sqrt(1-x*x)))
        else
          ArcSin:=Sign(x)*90
    else
      begin
        Write(^G);
        WriteLn('ArcSin Error')
      end;
end;

function ArcCos(x: real): real;

begin
  if Abs(x)<=1
    then
      if Abs(x)<1
        then
          ArcCos:=2*ArcTan(Sqrt((1-x)/(1+x)))
        else
          ArcCos:=90*(1-x)
     else
       begin
         Write(^G);
         WriteLn('ArcCos Error')
       end;
end;

begin
  ClrScr;
  Assign(txt,'OUTPUT.TXT');
  Rewrite(txt);
  x:=-180;
  repeat
  if Trunc(x) Mod 60 = 0 then
    begin
      WriteLn(txt);
      WriteLn(txt,'  x',' ':11,'Sin(x)',' ':18,'Cos(x)',' ':18,'Tan(x)');
      WriteLn(txt)
    end;
    WriteLn(txt,x:4:0,'  ',Sin(x):21:18,'   ',Cos(x):21:18,'  ',Tan(x));
    x:=x+1
  until x=180;
  WriteLn(txt);
  x:=-1;
  WriteLn(txt,'   x',' ':9,'ArcSin(x)',' ':16,'ArcCos(x)',' ':16,'ArcTan(x)');
  WriteLn(txt);
  repeat
    WriteLn(txt,x:6:1,'  ',ArcSin(x):22:18,'  ',ArcCos(x):22:18,'  ',ArcTan(x):22:18);
    x:=x+0.1
  until x>1;
  x:=-150;
  repeat
    if x<>0 then WriteLn(txt,x:6:1,'        ------------            ------------      ',ArcTan(x):22:18);
    x:=x+10
  until x>150;
  WriteLn(txt);
  WriteLn(txt,' ArcSin(ArcCos(ArcTan(Tan(Cos(Sin(9)))))) = ',ArcSin(ArcCos(ArcTan(Tan(Cos(Sin(9)))))):20:18);
  Close(txt)
end.

-----------------------------------------------------------------------------------------------------



  x           Sin(x)                  Cos(x)                  Tan(x)

-180   0.000000000000000000   -1.000000000000000000    0.00000000000000000E+00
-179  -0.017452406437283513   -0.999847695156391238    1.74550649282175858E-02
-178  -0.034899496702500972   -0.999390827019095730    3.49207694917477305E-02
-177  -0.052335956242943833   -0.998629534754573875    5.24077792830412040E-02
-176  -0.069756473744125301   -0.997564050259824247    6.99268119435104134E-02
-175  -0.087155742747658174   -0.996194698091745533    8.74886635259240053E-02
-174  -0.104528463267653471   -0.994521895368273335    1.05104235265676462E-01
-173  -0.121869343405147481   -0.992546151641322033    1.22784560902904591E-01
-172  -0.139173100960065444   -0.990268068741570314    1.40540834702391447E-01
-171  -0.156434465040230869   -0.987688340595137728    1.58384440324536294E-01
-170  -0.173648177666930349   -0.984807753012208060    1.76326980708464974E-01
-169  -0.190808995376544813   -0.981627183447663955    1.94380309137718485E-01
-168  -0.207911690817759337   -0.978147600733805637    2.12556561670022125E-01
-167  -0.224951054343864998   -0.974370064785235228    2.30868191125563112E-01
-166  -0.241921895599667722   -0.970295726275996473    2.49328002843180691E-01
-165  -0.258819045102520762   -0.965925826289068289    2.67949192431122705E-01
-164  -0.275637355816999186   -0.961261695938318863    2.86745385758807940E-01
-163  -0.292371704722736728   -0.956304755963035483    3.05730681458660355E-01
-162  -0.309016994374947423   -0.951056516295153574    3.24919696232906324E-01
-161  -0.325568154457156668   -0.945518575599316810    3.44327613289665241E-01
-160  -0.342020143325668734   -0.939692620785908382    3.63970234266202363E-01
-159  -0.358367949545300273   -0.933580426497201748    3.83864035035415796E-01
-158  -0.374606593415912035   -0.927183854566787401    4.04026225835156811E-01
-157  -0.390731128489273753   -0.920504853452440329    4.24474816209604739E-01
-156  -0.406736643075800207   -0.913545457642600895    4.45228685308536163E-01
-155  -0.422618261740699438   -0.906307787036649962    4.66307658154998595E-01
-154  -0.438371146789077419   -0.898794046299166993    4.87732588565861424E-01
-153  -0.453990499739546791   -0.891006524188367861    5.09525449494428811E-01
-152  -0.469471562785890776   -0.882947592858926941    5.31709431661478749E-01
-151  -0.484809620246337029   -0.874619707139395801    5.54309051452768917E-01
-150  -0.500000000000000001   -0.866025403784438647    5.77350269189625766E-01
-149  -0.515038074910054210   -0.857167300702112288    6.00860619027560414E-01
-148  -0.529919264233204955   -0.848048096156425969    6.24869351909327512E-01
-147  -0.544639035015027081   -0.838670567945424029    6.49407593197510576E-01
-146  -0.559192903470746829   -0.829037572555041693    6.74508516842426630E-01
-145  -0.573576436351046096   -0.819152044288991790    7.00207538209709779E-01
-144  -0.587785252292473129   -0.809016994374947424    7.26542528005360886E-01
-143  -0.601815023152048278   -0.798635510047292846    7.53554050102794155E-01
-142  -0.615661475325658280   -0.788010753606721956    7.81285626506717398E-01
-141  -0.629320391049837454   -0.777145961456970881    8.09784033195007149E-01
-140  -0.642787609686539326   -0.766044443118978035    8.39099631177280012E-01
-139  -0.656059028990507285   -0.754709580222771999    8.69286737816226661E-01
-138  -0.669130606358858214   -0.743144825477394236    9.00404044297839944E-01
-137  -0.681998360062498501   -0.731353701619170482    9.32515086137661708E-01
-136  -0.694658370458997285   -0.719339800338651138    9.65688774807074045E-01
-135  -0.707106781186547523   -0.707106781186547523    1.00000000000000000E+00
-134  -0.719339800338651138   -0.694658370458997285    1.03553031379056951E+00
-133  -0.731353701619170482   -0.681998360062498501    1.07236871002468253E+00
-132  -0.743144825477394236   -0.669130606358858214    1.11061251482919287E+00
-131  -0.754709580222771999   -0.656059028990507285    1.15036840722100956E+00
-130  -0.766044443118978035   -0.642787609686539326    1.19175359259420996E+00
-129  -0.777145961456970881   -0.629320391049837454    1.23489715653505140E+00
-128  -0.788010753606721956   -0.615661475325658280    1.27994163219307878E+00
-127  -0.798635510047292846   -0.601815023152048278    1.32704482162041004E+00
-126  -0.809016994374947424   -0.587785252292473129    1.37638192047117354E+00
-125  -0.819152044288991790   -0.573576436351046096    1.42814800674211450E+00
-124  -0.829037572555041693   -0.559192903470746829    1.48256096851274026E+00
-123  -0.838670567945424029   -0.544639035015027081    1.53986496381458291E+00
-122  -0.848048096156425969   -0.529919264233204955    1.60033452904105035E+00
-121  -0.857167300702112288   -0.515038074910054210    1.66427948235051791E+00

  x           Sin(x)                  Cos(x)                  Tan(x)

-120  -0.866025403784438647   -0.500000000000000001    1.73205080756887729E+00
-119  -0.874619707139395801   -0.484809620246337029    1.80404775527142394E+00
-118  -0.882947592858926941   -0.469471562785890776    1.88072646534633201E+00
-117  -0.891006524188367861   -0.453990499739546791    1.96261050550515058E+00
-116  -0.898794046299166993   -0.438371146789077419    2.05030384157929621E+00
-115  -0.906307787036649962   -0.422618261740699438    2.14450692050955860E+00
-114  -0.913545457642600895   -0.406736643075800207    2.24603677390421606E+00
-113  -0.920504853452440329   -0.390731128489273753    2.35585236582375285E+00
-112  -0.927183854566787401   -0.374606593415912035    2.47508685341629583E+00
-111  -0.933580426497201748   -0.358367949545300273    2.60508906469380154E+00
-110  -0.939692620785908382   -0.342020143325668734    2.74747741945462227E+00
-109  -0.945518575599316810   -0.325568154457156668    2.90421087767582281E+00
-108  -0.951056516295153574   -0.309016994374947423    3.07768353717525342E+00
-107  -0.956304755963035483   -0.292371704722736728    3.27085261848414087E+00
-106  -0.961261695938318863   -0.275637355816999186    3.48741444384090865E+00
-105  -0.965925826289068289   -0.258819045102520762    3.73205080756887731E+00
-104  -0.970295726275996473   -0.241921895599667722    4.01078093353584473E+00
-103  -0.974370064785235228   -0.224951054343864998    4.33147587428415554E+00
-102  -0.978147600733805637   -0.207911690817759337    4.70463010947845423E+00
-101  -0.981627183447663955   -0.190808995376544813    5.14455401597031013E+00
-100  -0.984807753012208060   -0.173648177666930349    5.67128181961770953E+00
 -99  -0.987688340595137728   -0.156434465040230869    6.31375151467504311E+00
 -98  -0.990268068741570314   -0.139173100960065444    7.11536972238420875E+00
 -97  -0.992546151641322033   -0.121869343405147481    8.14434642797459402E+00
 -96  -0.994521895368273335   -0.104528463267653471    9.51436445422258495E+00
 -95  -0.996194698091745533   -0.087155742747658174    1.14300523027613431E+01
 -94  -0.997564050259824247   -0.069756473744125301    1.43006662567119280E+01
 -93  -0.998629534754573875   -0.052335956242943833    1.90811366877282111E+01
 -92  -0.999390827019095730   -0.034899496702500972    2.86362532829156036E+01
 -91  -0.999847695156391238   -0.017452406437283513    5.72899616307594247E+01
 -90  -1.000000000000000000    0.000000000000000000   -9.99999999999999999E+49
 -89  -0.999847695156391238    0.017452406437283513   -5.72899616307594247E+01
 -88  -0.999390827019095730    0.034899496702500972   -2.86362532829156036E+01
 -87  -0.998629534754573875    0.052335956242943833   -1.90811366877282111E+01
 -86  -0.997564050259824247    0.069756473744125301   -1.43006662567119280E+01
 -85  -0.996194698091745533    0.087155742747658174   -1.14300523027613431E+01
 -84  -0.994521895368273335    0.104528463267653471   -9.51436445422258495E+00
 -83  -0.992546151641322033    0.121869343405147481   -8.14434642797459402E+00
 -82  -0.990268068741570314    0.139173100960065444   -7.11536972238420875E+00
 -81  -0.987688340595137728    0.156434465040230869   -6.31375151467504311E+00
 -80  -0.984807753012208060    0.173648177666930349   -5.67128181961770953E+00
 -79  -0.981627183447663955    0.190808995376544813   -5.14455401597031013E+00
 -78  -0.978147600733805637    0.207911690817759337   -4.70463010947845423E+00
 -77  -0.974370064785235228    0.224951054343864998   -4.33147587428415554E+00
 -76  -0.970295726275996473    0.241921895599667722   -4.01078093353584473E+00
 -75  -0.965925826289068289    0.258819045102520762   -3.73205080756887731E+00
 -74  -0.961261695938318863    0.275637355816999186   -3.48741444384090865E+00
 -73  -0.956304755963035483    0.292371704722736728   -3.27085261848414087E+00
 -72  -0.951056516295153574    0.309016994374947423   -3.07768353717525342E+00
 -71  -0.945518575599316810    0.325568154457156668   -2.90421087767582281E+00
 -70  -0.939692620785908382    0.342020143325668734   -2.74747741945462227E+00
 -69  -0.933580426497201748    0.358367949545300273   -2.60508906469380154E+00
 -68  -0.927183854566787401    0.374606593415912035   -2.47508685341629583E+00
 -67  -0.920504853452440329    0.390731128489273753   -2.35585236582375285E+00
 -66  -0.913545457642600895    0.406736643075800207   -2.24603677390421606E+00
 -65  -0.906307787036649962    0.422618261740699438   -2.14450692050955860E+00
 -64  -0.898794046299166993    0.438371146789077419   -2.05030384157929621E+00
 -63  -0.891006524188367861    0.453990499739546791   -1.96261050550515058E+00
 -62  -0.882947592858926941    0.469471562785890776   -1.88072646534633201E+00
 -61  -0.874619707139395801    0.484809620246337029   -1.80404775527142394E+00

  x           Sin(x)                  Cos(x)                  Tan(x)

 -60  -0.866025403784438647    0.500000000000000001   -1.73205080756887729E+00
 -59  -0.857167300702112288    0.515038074910054210   -1.66427948235051791E+00
 -58  -0.848048096156425969    0.529919264233204955   -1.60033452904105035E+00
 -57  -0.838670567945424029    0.544639035015027081   -1.53986496381458291E+00
 -56  -0.829037572555041693    0.559192903470746829   -1.48256096851274026E+00
 -55  -0.819152044288991790    0.573576436351046096   -1.42814800674211450E+00
 -54  -0.809016994374947424    0.587785252292473129   -1.37638192047117354E+00
 -53  -0.798635510047292846    0.601815023152048278   -1.32704482162041004E+00
 -52  -0.788010753606721956    0.615661475325658280   -1.27994163219307878E+00
 -51  -0.777145961456970881    0.629320391049837454   -1.23489715653505140E+00
 -50  -0.766044443118978035    0.642787609686539326   -1.19175359259420996E+00
 -49  -0.754709580222771999    0.656059028990507285   -1.15036840722100956E+00
 -48  -0.743144825477394236    0.669130606358858214   -1.11061251482919287E+00
 -47  -0.731353701619170482    0.681998360062498501   -1.07236871002468253E+00
 -46  -0.719339800338651138    0.694658370458997285   -1.03553031379056951E+00
 -45  -0.707106781186547523    0.707106781186547523   -1.00000000000000000E+00
 -44  -0.694658370458997285    0.719339800338651138   -9.65688774807074045E-01
 -43  -0.681998360062498501    0.731353701619170482   -9.32515086137661708E-01
 -42  -0.669130606358858214    0.743144825477394236   -9.00404044297839944E-01
 -41  -0.656059028990507285    0.754709580222771999   -8.69286737816226661E-01
 -40  -0.642787609686539326    0.766044443118978035   -8.39099631177280012E-01
 -39  -0.629320391049837454    0.777145961456970881   -8.09784033195007149E-01
 -38  -0.615661475325658280    0.788010753606721956   -7.81285626506717398E-01
 -37  -0.601815023152048278    0.798635510047292846   -7.53554050102794155E-01
 -36  -0.587785252292473129    0.809016994374947424   -7.26542528005360886E-01
 -35  -0.573576436351046096    0.819152044288991790   -7.00207538209709779E-01
 -34  -0.559192903470746829    0.829037572555041693   -6.74508516842426630E-01
 -33  -0.544639035015027081    0.838670567945424029   -6.49407593197510576E-01
 -32  -0.529919264233204955    0.848048096156425969   -6.24869351909327512E-01
 -31  -0.515038074910054210    0.857167300702112288   -6.00860619027560414E-01
 -30  -0.500000000000000001    0.866025403784438647   -5.77350269189625766E-01
 -29  -0.484809620246337029    0.874619707139395801   -5.54309051452768917E-01
 -28  -0.469471562785890776    0.882947592858926941   -5.31709431661478749E-01
 -27  -0.453990499739546791    0.891006524188367861   -5.09525449494428811E-01
 -26  -0.438371146789077419    0.898794046299166993   -4.87732588565861424E-01
 -25  -0.422618261740699438    0.906307787036649962   -4.66307658154998595E-01
 -24  -0.406736643075800207    0.913545457642600895   -4.45228685308536163E-01
 -23  -0.390731128489273753    0.920504853452440329   -4.24474816209604739E-01
 -22  -0.374606593415912035    0.927183854566787401   -4.04026225835156811E-01
 -21  -0.358367949545300273    0.933580426497201748   -3.83864035035415796E-01
 -20  -0.342020143325668734    0.939692620785908382   -3.63970234266202363E-01
 -19  -0.325568154457156668    0.945518575599316810   -3.44327613289665241E-01
 -18  -0.309016994374947423    0.951056516295153574   -3.24919696232906324E-01
 -17  -0.292371704722736728    0.956304755963035483   -3.05730681458660355E-01
 -16  -0.275637355816999186    0.961261695938318863   -2.86745385758807940E-01
 -15  -0.258819045102520762    0.965925826289068289   -2.67949192431122705E-01
 -14  -0.241921895599667722    0.970295726275996473   -2.49328002843180691E-01
 -13  -0.224951054343864998    0.974370064785235228   -2.30868191125563112E-01
 -12  -0.207911690817759337    0.978147600733805637   -2.12556561670022125E-01
 -11  -0.190808995376544813    0.981627183447663955   -1.94380309137718485E-01
 -10  -0.173648177666930349    0.984807753012208060   -1.76326980708464974E-01
  -9  -0.156434465040230869    0.987688340595137728   -1.58384440324536294E-01
  -8  -0.139173100960065444    0.990268068741570314   -1.40540834702391447E-01
  -7  -0.121869343405147481    0.992546151641322033   -1.22784560902904591E-01
  -6  -0.104528463267653471    0.994521895368273335   -1.05104235265676462E-01
  -5  -0.087155742747658174    0.996194698091745533   -8.74886635259240053E-02
  -4  -0.069756473744125301    0.997564050259824247   -6.99268119435104134E-02
  -3  -0.052335956242943833    0.998629534754573875   -5.24077792830412040E-02
  -2  -0.034899496702500972    0.999390827019095730   -3.49207694917477305E-02
  -1  -0.017452406437283513    0.999847695156391238   -1.74550649282175858E-02

  x           Sin(x)                  Cos(x)                  Tan(x)

   0   0.000000000000000000    1.000000000000000000    0.00000000000000000E+00
   1   0.017452406437283513    0.999847695156391238    1.74550649282175858E-02
   2   0.034899496702500972    0.999390827019095730    3.49207694917477305E-02
   3   0.052335956242943833    0.998629534754573875    5.24077792830412040E-02
   4   0.069756473744125301    0.997564050259824247    6.99268119435104134E-02
   5   0.087155742747658174    0.996194698091745533    8.74886635259240053E-02
   6   0.104528463267653471    0.994521895368273335    1.05104235265676462E-01
   7   0.121869343405147481    0.992546151641322033    1.22784560902904591E-01
   8   0.139173100960065444    0.990268068741570314    1.40540834702391447E-01
   9   0.156434465040230869    0.987688340595137728    1.58384440324536294E-01
  10   0.173648177666930349    0.984807753012208060    1.76326980708464974E-01
  11   0.190808995376544813    0.981627183447663955    1.94380309137718485E-01
  12   0.207911690817759337    0.978147600733805637    2.12556561670022125E-01
  13   0.224951054343864998    0.974370064785235228    2.30868191125563112E-01
  14   0.241921895599667722    0.970295726275996473    2.49328002843180691E-01
  15   0.258819045102520762    0.965925826289068289    2.67949192431122705E-01
  16   0.275637355816999186    0.961261695938318863    2.86745385758807940E-01
  17   0.292371704722736728    0.956304755963035483    3.05730681458660355E-01
  18   0.309016994374947423    0.951056516295153574    3.24919696232906324E-01
  19   0.325568154457156668    0.945518575599316810    3.44327613289665241E-01
  20   0.342020143325668734    0.939692620785908382    3.63970234266202363E-01
  21   0.358367949545300273    0.933580426497201748    3.83864035035415796E-01
  22   0.374606593415912035    0.927183854566787401    4.04026225835156811E-01
  23   0.390731128489273753    0.920504853452440329    4.24474816209604739E-01
  24   0.406736643075800207    0.913545457642600895    4.45228685308536163E-01
  25   0.422618261740699438    0.906307787036649962    4.66307658154998595E-01
  26   0.438371146789077419    0.898794046299166993    4.87732588565861424E-01
  27   0.453990499739546791    0.891006524188367861    5.09525449494428811E-01
  28   0.469471562785890776    0.882947592858926941    5.31709431661478749E-01
  29   0.484809620246337029    0.874619707139395801    5.54309051452768917E-01
  30   0.500000000000000001    0.866025403784438647    5.77350269189625766E-01
  31   0.515038074910054210    0.857167300702112288    6.00860619027560414E-01
  32   0.529919264233204955    0.848048096156425969    6.24869351909327512E-01
  33   0.544639035015027081    0.838670567945424029    6.49407593197510576E-01
  34   0.559192903470746829    0.829037572555041693    6.74508516842426630E-01
  35   0.573576436351046096    0.819152044288991790    7.00207538209709779E-01
  36   0.587785252292473129    0.809016994374947424    7.26542528005360886E-01
  37   0.601815023152048278    0.798635510047292846    7.53554050102794155E-01
  38   0.615661475325658280    0.788010753606721956    7.81285626506717398E-01
  39   0.629320391049837454    0.777145961456970881    8.09784033195007149E-01
  40   0.642787609686539326    0.766044443118978035    8.39099631177280012E-01
  41   0.656059028990507285    0.754709580222771999    8.69286737816226661E-01
  42   0.669130606358858214    0.743144825477394236    9.00404044297839944E-01
  43   0.681998360062498501    0.731353701619170482    9.32515086137661708E-01
  44   0.694658370458997285    0.719339800338651138    9.65688774807074045E-01
  45   0.707106781186547523    0.707106781186547523    1.00000000000000000E+00
  46   0.719339800338651138    0.694658370458997285    1.03553031379056951E+00
  47   0.731353701619170482    0.681998360062498501    1.07236871002468253E+00
  48   0.743144825477394236    0.669130606358858214    1.11061251482919287E+00
  49   0.754709580222771999    0.656059028990507285    1.15036840722100956E+00
  50   0.766044443118978035    0.642787609686539326    1.19175359259420996E+00
  51   0.777145961456970881    0.629320391049837454    1.23489715653505140E+00
  52   0.788010753606721956    0.615661475325658280    1.27994163219307878E+00
  53   0.798635510047292846    0.601815023152048278    1.32704482162041004E+00
  54   0.809016994374947424    0.587785252292473129    1.37638192047117354E+00
  55   0.819152044288991790    0.573576436351046096    1.42814800674211450E+00
  56   0.829037572555041693    0.559192903470746829    1.48256096851274026E+00
  57   0.838670567945424029    0.544639035015027081    1.53986496381458291E+00
  58   0.848048096156425969    0.529919264233204955    1.60033452904105035E+00
  59   0.857167300702112288    0.515038074910054210    1.66427948235051791E+00

  x           Sin(x)                  Cos(x)                  Tan(x)

  60   0.866025403784438647    0.500000000000000001    1.73205080756887729E+00
  61   0.874619707139395801    0.484809620246337029    1.80404775527142394E+00
  62   0.882947592858926941    0.469471562785890776    1.88072646534633201E+00
  63   0.891006524188367861    0.453990499739546791    1.96261050550515058E+00
  64   0.898794046299166993    0.438371146789077419    2.05030384157929621E+00
  65   0.906307787036649962    0.422618261740699438    2.14450692050955860E+00
  66   0.913545457642600895    0.406736643075800207    2.24603677390421606E+00
  67   0.920504853452440329    0.390731128489273753    2.35585236582375285E+00
  68   0.927183854566787401    0.374606593415912035    2.47508685341629583E+00
  69   0.933580426497201748    0.358367949545300273    2.60508906469380154E+00
  70   0.939692620785908382    0.342020143325668734    2.74747741945462227E+00
  71   0.945518575599316810    0.325568154457156668    2.90421087767582281E+00
  72   0.951056516295153574    0.309016994374947423    3.07768353717525342E+00
  73   0.956304755963035483    0.292371704722736728    3.27085261848414087E+00
  74   0.961261695938318863    0.275637355816999186    3.48741444384090865E+00
  75   0.965925826289068289    0.258819045102520762    3.73205080756887731E+00
  76   0.970295726275996473    0.241921895599667722    4.01078093353584473E+00
  77   0.974370064785235228    0.224951054343864998    4.33147587428415554E+00
  78   0.978147600733805637    0.207911690817759337    4.70463010947845423E+00
  79   0.981627183447663955    0.190808995376544813    5.14455401597031013E+00
  80   0.984807753012208060    0.173648177666930349    5.67128181961770953E+00
  81   0.987688340595137728    0.156434465040230869    6.31375151467504311E+00
  82   0.990268068741570314    0.139173100960065444    7.11536972238420875E+00
  83   0.992546151641322033    0.121869343405147481    8.14434642797459402E+00
  84   0.994521895368273335    0.104528463267653471    9.51436445422258495E+00
  85   0.996194698091745533    0.087155742747658174    1.14300523027613431E+01
  86   0.997564050259824247    0.069756473744125301    1.43006662567119280E+01
  87   0.998629534754573875    0.052335956242943833    1.90811366877282111E+01
  88   0.999390827019095730    0.034899496702500972    2.86362532829156036E+01
  89   0.999847695156391238    0.017452406437283513    5.72899616307594247E+01
  90   1.000000000000000000    0.000000000000000000    9.99999999999999999E+49
  91   0.999847695156391238   -0.017452406437283513   -5.72899616307594247E+01
  92   0.999390827019095730   -0.034899496702500972   -2.86362532829156036E+01
  93   0.998629534754573875   -0.052335956242943833   -1.90811366877282111E+01
  94   0.997564050259824247   -0.069756473744125301   -1.43006662567119280E+01
  95   0.996194698091745533   -0.087155742747658174   -1.14300523027613431E+01
  96   0.994521895368273335   -0.104528463267653471   -9.51436445422258495E+00
  97   0.992546151641322033   -0.121869343405147481   -8.14434642797459402E+00
  98   0.990268068741570314   -0.139173100960065444   -7.11536972238420875E+00
  99   0.987688340595137728   -0.156434465040230869   -6.31375151467504311E+00
 100   0.984807753012208060   -0.173648177666930349   -5.67128181961770953E+00
 101   0.981627183447663955   -0.190808995376544813   -5.14455401597031013E+00
 102   0.978147600733805637   -0.207911690817759337   -4.70463010947845423E+00
 103   0.974370064785235228   -0.224951054343864998   -4.33147587428415554E+00
 104   0.970295726275996473   -0.241921895599667722   -4.01078093353584473E+00
 105   0.965925826289068289   -0.258819045102520762   -3.73205080756887731E+00
 106   0.961261695938318863   -0.275637355816999186   -3.48741444384090865E+00
 107   0.956304755963035483   -0.292371704722736728   -3.27085261848414087E+00
 108   0.951056516295153574   -0.309016994374947423   -3.07768353717525342E+00
 109   0.945518575599316810   -0.325568154457156668   -2.90421087767582281E+00
 110   0.939692620785908382   -0.342020143325668734   -2.74747741945462227E+00
 111   0.933580426497201748   -0.358367949545300273   -2.60508906469380154E+00
 112   0.927183854566787401   -0.374606593415912035   -2.47508685341629583E+00
 113   0.920504853452440329   -0.390731128489273753   -2.35585236582375285E+00
 114   0.913545457642600895   -0.406736643075800207   -2.24603677390421606E+00
 115   0.906307787036649962   -0.422618261740699438   -2.14450692050955860E+00
 116   0.898794046299166993   -0.438371146789077419   -2.05030384157929621E+00
 117   0.891006524188367861   -0.453990499739546791   -1.96261050550515058E+00
 118   0.882947592858926941   -0.469471562785890776   -1.88072646534633201E+00
 119   0.874619707139395801   -0.484809620246337029   -1.80404775527142394E+00

  x           Sin(x)                  Cos(x)                  Tan(x)

 120   0.866025403784438647   -0.500000000000000001   -1.73205080756887729E+00
 121   0.857167300702112288   -0.515038074910054210   -1.66427948235051791E+00
 122   0.848048096156425969   -0.529919264233204955   -1.60033452904105035E+00
 123   0.838670567945424029   -0.544639035015027081   -1.53986496381458291E+00
 124   0.829037572555041693   -0.559192903470746829   -1.48256096851274026E+00
 125   0.819152044288991790   -0.573576436351046096   -1.42814800674211450E+00
 126   0.809016994374947424   -0.587785252292473129   -1.37638192047117354E+00
 127   0.798635510047292846   -0.601815023152048278   -1.32704482162041004E+00
 128   0.788010753606721956   -0.615661475325658280   -1.27994163219307878E+00
 129   0.777145961456970881   -0.629320391049837454   -1.23489715653505140E+00
 130   0.766044443118978035   -0.642787609686539326   -1.19175359259420996E+00
 131   0.754709580222771999   -0.656059028990507285   -1.15036840722100956E+00
 132   0.743144825477394236   -0.669130606358858214   -1.11061251482919287E+00
 133   0.731353701619170482   -0.681998360062498501   -1.07236871002468253E+00
 134   0.719339800338651138   -0.694658370458997285   -1.03553031379056951E+00
 135   0.707106781186547523   -0.707106781186547523   -1.00000000000000000E+00
 136   0.694658370458997285   -0.719339800338651138   -9.65688774807074045E-01
 137   0.681998360062498501   -0.731353701619170482   -9.32515086137661708E-01
 138   0.669130606358858214   -0.743144825477394236   -9.00404044297839944E-01
 139   0.656059028990507285   -0.754709580222771999   -8.69286737816226661E-01
 140   0.642787609686539326   -0.766044443118978035   -8.39099631177280012E-01
 141   0.629320391049837454   -0.777145961456970881   -8.09784033195007149E-01
 142   0.615661475325658280   -0.788010753606721956   -7.81285626506717398E-01
 143   0.601815023152048278   -0.798635510047292846   -7.53554050102794155E-01
 144   0.587785252292473129   -0.809016994374947424   -7.26542528005360886E-01
 145   0.573576436351046096   -0.819152044288991790   -7.00207538209709779E-01
 146   0.559192903470746829   -0.829037572555041693   -6.74508516842426630E-01
 147   0.544639035015027081   -0.838670567945424029   -6.49407593197510576E-01
 148   0.529919264233204955   -0.848048096156425969   -6.24869351909327512E-01
 149   0.515038074910054210   -0.857167300702112288   -6.00860619027560414E-01
 150   0.500000000000000001   -0.866025403784438647   -5.77350269189625766E-01
 151   0.484809620246337029   -0.874619707139395801   -5.54309051452768917E-01
 152   0.469471562785890776   -0.882947592858926941   -5.31709431661478749E-01
 153   0.453990499739546791   -0.891006524188367861   -5.09525449494428811E-01
 154   0.438371146789077419   -0.898794046299166993   -4.87732588565861424E-01
 155   0.422618261740699438   -0.906307787036649962   -4.66307658154998595E-01
 156   0.406736643075800207   -0.913545457642600895   -4.45228685308536163E-01
 157   0.390731128489273753   -0.920504853452440329   -4.24474816209604739E-01
 158   0.374606593415912035   -0.927183854566787401   -4.04026225835156811E-01
 159   0.358367949545300273   -0.933580426497201748   -3.83864035035415796E-01
 160   0.342020143325668734   -0.939692620785908382   -3.63970234266202363E-01
 161   0.325568154457156668   -0.945518575599316810   -3.44327613289665241E-01
 162   0.309016994374947423   -0.951056516295153574   -3.24919696232906324E-01
 163   0.292371704722736728   -0.956304755963035483   -3.05730681458660355E-01
 164   0.275637355816999186   -0.961261695938318863   -2.86745385758807940E-01
 165   0.258819045102520762   -0.965925826289068289   -2.67949192431122705E-01
 166   0.241921895599667722   -0.970295726275996473   -2.49328002843180691E-01
 167   0.224951054343864998   -0.974370064785235228   -2.30868191125563112E-01
 168   0.207911690817759337   -0.978147600733805637   -2.12556561670022125E-01
 169   0.190808995376544813   -0.981627183447663955   -1.94380309137718485E-01
 170   0.173648177666930349   -0.984807753012208060   -1.76326980708464974E-01
 171   0.156434465040230869   -0.987688340595137728   -1.58384440324536294E-01
 172   0.139173100960065444   -0.990268068741570314   -1.40540834702391447E-01
 173   0.121869343405147481   -0.992546151641322033   -1.22784560902904591E-01
 174   0.104528463267653471   -0.994521895368273335   -1.05104235265676462E-01
 175   0.087155742747658174   -0.996194698091745533   -8.74886635259240053E-02
 176   0.069756473744125301   -0.997564050259824247   -6.99268119435104134E-02
 177   0.052335956242943833   -0.998629534754573875   -5.24077792830412040E-02
 178   0.034899496702500972   -0.999390827019095730   -3.49207694917477305E-02
 179   0.017452406437283513   -0.999847695156391238   -1.74550649282175858E-02

   x         ArcSin(x)                ArcCos(x)                ArcTan(x)

  -1.0  -90.000000000000000000  180.000000000000000000  -45.000000000000000300
  -0.9  -64.158067236832871500  154.158067236832871000  -41.987212495816659900
  -0.8  -53.130102354155979000  143.130102354155979000  -38.659808254090090300
  -0.7  -44.427004000805703500  134.427004000805705000  -34.992020198558661800
  -0.6  -36.869897645844021100  126.869897645844022000  -30.963756532073521100
  -0.5  -29.999999999999999800  120.000000000000000000  -26.565051177077989100
  -0.4  -23.578178478201830900  113.578178478201832000  -21.801409486351811500
  -0.3  -17.457603123722092100  107.457603123722093000  -16.699244233993621600
  -0.2  -11.536959032815487700  101.536959032815488000  -11.309932474020213100
  -0.1   -5.739170477266786350   95.739170477266787000   -5.710593137499642520
   0.0    0.000000000000000000   90.000000000000000600    0.000000000000000000
   0.1    5.739170477266786350   84.260829522733213200    5.710593137499642520
   0.2   11.536959032815487700   78.463040967184512000   11.309932474020213100
   0.3   17.457603123722092100   72.542396876277907400   16.699244233993621600
   0.4   23.578178478201830900   66.421821521798168400   21.801409486351811500
   0.5   29.999999999999999800   59.999999999999999600   26.565051177077989100
   0.6   36.869897645844021100   53.130102354155978200   30.963756532073521100
   0.7   44.427004000805703500   45.572995999194296000   34.992020198558661800
   0.8   53.130102354155979000   36.869897645844020800   38.659808254090090300
   0.9   64.158067236832871500   25.841932763167128800   41.987212495816659900
   1.0   90.000000000000000000    0.000000000000000000   45.000000000000000300
-150.0        ------------            ------------      -89.618033795270974600
-140.0        ------------            ------------      -89.590751391965061500
-130.0        ------------            ------------      -89.559271927238986100
-120.0        ------------            ------------      -89.522546222690422600
-110.0        ------------            ------------      -89.479143625498041400
-100.0        ------------            ------------      -89.427061302316514100
 -90.0        ------------            ------------      -89.363406424036513800
 -80.0        ------------            ------------      -89.283840054529591500
 -70.0        ------------            ------------      -89.181544538311385700
 -60.0        ------------            ------------      -89.045158746127811300
 -50.0        ------------            ------------      -88.854237161824896900
 -40.0        ------------            ------------      -88.567903815835353700
 -30.0        ------------            ------------      -88.090847567003623700
 -20.0        ------------            ------------      -87.137594773888252600
 -10.0        ------------            ------------      -84.289406862500357400
  10.0        ------------            ------------       84.289406862500357400
  20.0        ------------            ------------       87.137594773888252600
  30.0        ------------            ------------       88.090847567003623700
  40.0        ------------            ------------       88.567903815835353700
  50.0        ------------            ------------       88.854237161824896900
  60.0        ------------            ------------       89.045158746127811300
  70.0        ------------            ------------       89.181544538311385700
  80.0        ------------            ------------       89.283840054529591500
  90.0        ------------            ------------       89.363406424036513800
 100.0        ------------            ------------       89.427061302316514100
 110.0        ------------            ------------       89.479143625498041400
 120.0        ------------            ------------       89.522546222690422600
 130.0        ------------            ------------       89.559271927238986100
 140.0        ------------            ------------       89.590751391965061500
 150.0        ------------            ------------       89.618033795270974600

 ArcSin(ArcCos(ArcTan(Tan(Cos(Sin(9)))))) = 8.999999999996491040


-----------------------------------------------------------------------------------------------------
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
RE: Algorithms for trig. on scientific calculators ? - Gerson W. Barbosa - 12-09-2024 10:59 PM



User(s) browsing this thread: 2 Guest(s)