mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-20 07:19:27 +02:00
* fixed test (typecast floating point constants to float)
git-svn-id: trunk@5892 -
This commit is contained in:
parent
93c86bbaf2
commit
8e5a5d3f2b
@ -33,7 +33,7 @@ begin
|
||||
for i:=1 to dim do
|
||||
begin
|
||||
// Generate constant array above output
|
||||
write(sin(i*10/180.0*pi),',');
|
||||
write(sin(i*10/float(180.0)*pi),',');
|
||||
if i mod 4 = 0 then writeln;
|
||||
end;
|
||||
|
||||
@ -42,7 +42,7 @@ writeln('Testing SIN');
|
||||
for i:=1 to dim do
|
||||
begin
|
||||
Ref:=sinus[i];
|
||||
Value:=sin(i*10/180.0*pi);
|
||||
Value:=sin(i*10/float(180.0)*pi);
|
||||
Delta := Value - Ref;
|
||||
if Abs(Delta) > 1E-15 then
|
||||
begin
|
||||
@ -55,8 +55,8 @@ for i:=1 to dim do
|
||||
writeln('Testing COS');
|
||||
for i:=1 to dim do
|
||||
begin
|
||||
Ref := sin(pi/2-i*10/180*pi);
|
||||
Value := cos(i*10/180*pi);
|
||||
Ref := sin(pi/2-i*10/float(180)*pi);
|
||||
Value := cos(i*10/float(180)*pi);
|
||||
Delta := Value - Ref;
|
||||
if Abs(Delta) > 1E-15 then
|
||||
begin
|
||||
@ -71,8 +71,8 @@ for i:=1 to dim do
|
||||
begin
|
||||
{ if i=9 then Ref := MaxFloat
|
||||
else if i=27 then Ref := -Maxfloat
|
||||
else } Ref:=sin(i*10/180*pi)/cos(i*10/180*pi);
|
||||
Value := tan(i*10/180*pi);
|
||||
else } Ref:=sin(i*10/float(180)*pi)/cos(i*10/float(180)*pi);
|
||||
Value := tan(i*10/float(180)*pi);
|
||||
Delta := Value - Ref;
|
||||
if Abs(Delta) > 1E-15 then
|
||||
begin
|
||||
@ -86,7 +86,7 @@ writeln('Testing ARCTAN...');
|
||||
for i:=1 to 8 do
|
||||
begin
|
||||
Ref := i*10;
|
||||
Value := arctan(tan(i*10/180*pi))/pi*180;
|
||||
Value := arctan(tan(i*10/float(180)*pi))/pi*float(180);
|
||||
Delta := Value - Ref;
|
||||
if Abs(Delta) > 1E-14 then
|
||||
begin
|
||||
@ -99,7 +99,7 @@ for i:=1 to 8 do
|
||||
for i:=-1 downto -8 do
|
||||
begin
|
||||
Ref := i*10;
|
||||
Value := arctan(tan(i*10/180*pi))/pi*180;
|
||||
Value := arctan(tan(i*10/float(180)*pi))/pi*float(180);
|
||||
Delta := Value - Ref;
|
||||
if Abs(Delta) > 1E-14 then
|
||||
begin
|
||||
@ -111,8 +111,8 @@ for i:=-1 downto -8 do
|
||||
writeln('Testing SINCOS');
|
||||
for i:=1 to dim do
|
||||
begin
|
||||
sincos(pi/2-i*10/180*pi,Ref2,Dummy);
|
||||
sincos(i*10/180*pi,Dummy,Value2);
|
||||
sincos(pi/2-i*10/float(180)*pi,Ref2,Dummy);
|
||||
sincos(i*10/float(180)*pi,Dummy,Value2);
|
||||
Delta := Value2 - Ref2;
|
||||
if Abs(Delta) > 1E-15 then
|
||||
begin
|
||||
@ -123,24 +123,24 @@ for i:=1 to dim do
|
||||
|
||||
|
||||
writeln('Tan +/- 90 deg test:');
|
||||
writeln('tan(89.999):',tan(89.999/180*pi));
|
||||
writeln('tan(90.000):',tan(90.000/180*pi));
|
||||
writeln('tan(89.999):',tan(89.999/float(180)*pi));
|
||||
writeln('tan(90.000):',tan(90.000/float(180)*pi));
|
||||
|
||||
writeln('tan(-89.999):',tan(-89.999/180*pi));
|
||||
writeln('tan(-90.000):',tan(-90.000/180*pi));
|
||||
writeln('tan(-89.999):',tan(-89.999/float(180)*pi));
|
||||
writeln('tan(-90.000):',tan(-90.000/float(180)*pi));
|
||||
|
||||
writeln('ArcTan2 kwadrants:');
|
||||
writeln('Kwadrant 1 ( 1, 1):',arctan2( 1, 1)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 2 (-1, 1):',arctan2( 1,-1)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 3 (-1,-1):',arctan2(-1,-1)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 4 ( 1,-1):',arctan2(-1, 1)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 1 ( 1, 1):',arctan2( 1, 1)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 2 (-1, 1):',arctan2( 1,-1)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 3 (-1,-1):',arctan2(-1,-1)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 4 ( 1,-1):',arctan2(-1, 1)/pi*float(180):5:1,' deg');
|
||||
|
||||
writeln('ArcTan2 special cases:');
|
||||
writeln('Kwadrant X ( 0, 0):',arctan2( 0, 0)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 1 ( 1, 0):',arctan2( 0, 1)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 2 ( 0, 1):',arctan2( 1, 0)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 3 (-1, 0):',arctan2( 0,-1)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant 4 ( 0,-1):',arctan2(-1, 0)/pi*180:5:1,' deg');
|
||||
writeln('Kwadrant X ( 0, 0):',arctan2( 0, 0)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 1 ( 1, 0):',arctan2( 0, 1)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 2 ( 0, 1):',arctan2( 1, 0)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 3 (-1, 0):',arctan2( 0,-1)/pi*float(180):5:1,' deg');
|
||||
writeln('Kwadrant 4 ( 0,-1):',arctan2(-1, 0)/pi*float(180):5:1,' deg');
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user