Test Generic Digits Arithmetic 0.0000000000000000000000000000000000000000000000E 0 = 0 from INTEGER 0 = back to integer 0 0.0000000000000000000000000000000000000000000000E 0 = 0.0 from REAL 0.00000000000000E+00 = 0.0 back to real 0.9990000000000000000000000000000000000000000000E 3 = 999 from INTEGER 999 = back to integer 999 -0.9990000000000000000000000000000000000000000000E 3 = -999 from INTEGER -999 = back to integer -999 0.9990000000000000000000000000000000000000000000E-4 = 0.0000999 from REAL 9.99000000000000E-05 = 0.0000999 back to real -0.9990000000000000000000000000000000000000000000E-4 = -0.0000999 from REAL -9.99000000000000E-05 = -0.0000999 back to real 0.1234567890000000000000000000000000000000000000E 9 = 123456789.0 from REAL 1.23456789000000E+08 = 123456789.0 back to real 0.5555555549999999000000000000000000000000000000E 9 = 555555555.0 from REAL 5.55555555000000E+08 = 555555555.0 back to real 0.3333333330000000000000000000000000000000000000E 9 = 333333333.0 from REAL 3.33333333000000E+08 = 333333333.0 back to real 0.1010010000999999000000000000000000000000000000E 10 = 1010010001.0 from REAL 1.01001000100000E+09 = 1010010001.0 back to real 0.1000000000000000000000000000000000000000000000E 1 = 0.999.. from REAL 1.00000000000000E+00 = 0.999.. back to real -0.1000000000000000000000000000000000000000000000E 1 = -0.999.. from REAL -1.00000000000000E+00 = -0.999.. back to real 0.1000000000000000000000000000000000000000000000E 1 = 1.0 from REAL 1.00000000000000E+00 = 1.0 back to real 0.1234567890000000000000000000000000000000000000E 21 = 1.2345E20 from REAL 1.23456789000000E+20 = 1.234E20 back to real 0.1000000000000000000000000000000000000000000000E 1 = +B -0.1234567890000000000000000000000000000000000000E 21 = -C 0.1234567890000000000000000000000000000000000000E 21 = -(-C) 0.0000000000000000000000000000000000000000000000E 0 = - CONSTANT_ZERO 0.1234567890000000000000000000000000000000000000E 21 = abs C 0.1234567890000000000000000000000000000000000000E 21 = abs(-C) 0.0000000000000000000000000000000000000000000000E 0 = abs CONSTANT_ZERO 0.1234567890000000000010000000000000000000000000E 21 = B+C 0.1100000000000000000000000000000000000000000000E 3 = 9+101 0.1090000000000000000000000000000000000000000000E 3 = 101+8 0.9020000000000000000000000000000000000000000000E 3 = -99+1001 0.1000000000000000000000000000000000000000000000E-199 = 0.0+1.0E-200 0.1000000000000000000000000000000000000000000000E-199 = 1.0E-200 + 0.0 0.1000000000000000000000000000000000000000000000E 1 = 1.0+1.0E-200 -0.9200000000000000000000000000000000000000000000E 2 = 9-101 0.9300000000000000000000000000000000000000000000E 2 = 101-8 -0.1100000000000000000000000000000000000000000000E 4 = -99-1001 -0.1000000000000000000000000000000000000000000000E-199 = 0.0-1.0E-200 0.1000000000000000000000000000000000000000000000E-199 = 1.0E-200 - 0.0 0.1000000000000000000000000000000000000000000000E 1 = 1.0-1.0E-200 0.9989001000000000000000000000000000000000000000E 7 = 9999*999 0.1001000000000000000000000000000000000000000000E 6 = 1001*100 -0.1001000000000000000000000000000000000000000000E 6 = -1001*100 -0.1001000000000000000000000000000000000000000000E 6 = 1001*-100 0.1001000000000000000000000000000000000000000000E 6 = -1001*-100 0.5000000000000000000000000000000000000000000000E 0 = 1/2 -0.3333333333333333333333333333333333333333333333E 0 = (-1)/3 -0.1500000000000000000000000000000000000000000000E 1 = 3/(-2) 0.1000000000000000000000000000000000000000000000E 1 = (1/4)*4 0.9999999999999999999999999999999999999999999996E 0 = (1/6)*6 0.0000000000000000000000000000000000000000000000E 0 = (Pi/4)*4-Pi -0.1000000000000000000000000000000000000000000000E-44 = (Pi/6)*6-Pi 0.0000000000000000000000000000000000000000000000E 0 = (Pi*1/4)*4-Pi -0.2000000000000000000000000000000000000000000000E-44 = (Pi*1/6)*6-Pi 0.1414213562373095048801688724209698078569671875E 1 = CONSTANT_ROOT_2 0.1732050807568877293527446341505872366942805253E 1 = CONSTANT_ROOT_3 0.5773502691896257645091487805019574556476017515E 0 = ONE_OVER_ROOT_3 0.2679491924311227064725536584941276330571947470E 0 = ATAN_BREAK_1 0.5176380902050415246977976752480966566981378035E 0 = ROOT_ATAN_BREAK 0.1316524975873958534715264574097171035928141082E 0 = ATAN_BREAK_2 0.3141592653589793238462643383279502884197169537E 1 = 6*ATAN(ONE_OVER_ROOT_3) 0.3141592653589793238462643383279502884197169362E 1 = 12*ATAN(ATAN_BREAK_1) 0.3141592653589793238462643383279502884197169537E 1 = 24*ATAN(ATAN_BREAK_2) 0.3141592653589793238462643383279502884197169538E 1 = CONSTANT_PI 0.4324645813981795163401016157161957019730151071E-32 = ATAN_BREAK_2 ** 35 / 35 0.4000000000000000000000000000000000000000400000E 41 = B 40...04 0.2000000000000000000000000000000000000000200000E 41 = 20...02 0.1000000000000000000000000000000000000000100000E 41 = C 10...01 0.1999999999999999999999999999999999999999800000E-39 = 19...99 0.9999999990000000000000000000000000000000000000E 9 = 999999999 0.1000000001000000000000000000000000000000000000E 10 = 100000001 divide by zero exception raised OK 0.1000000000000000000000000000000000000000000000E 1 = 10 ** 0 0.1000000000000000000000000000000000000000000000E 2 = 10 ** 1 0.1000000000000000000000000000000000000000000000E 0 = 10 ** -1 0.1000000000000000000000000000000000000000000000E 3 = 10 ** 2 0.1000000000000000000000000000000000000000000000E-1 = 10 ** -2 0.1414213562373095048801688724209698078569671875E 1 = SQRT(2) 0.1999999999999999999999999999999999999999999998E 1 = SQRT(2)**2 0.4472135954999579392818347337462552470881236719E 1 = SQRT(20) 0.1999999999999999999999999999999999999999999999E 2 = SQRT(20)**2 0.1414213562373095048801688724209698078569671875E 2 = SQRT(200) 0.1999999999999999999999999999999999999999999998E 3 = SQRT(200)**2 0.4472135954999579392818347337462552470881236719E 0 = SQRT(2E-1) 0.1999999999999999999999999999999999999999999999E 0 = SQRT(2E-1)**2 0.1414213562373095048801688724209698078569671875E 0 = SQRT(2E-2) 0.1999999999999999999999999999999999999999999998E-1 = SQRT(2E-2)**2 0.4472135954999579392818347337462552470881236719E-1 = SQRT(2E-3) 0.1999999999999999999999999999999999999999999999E-2 = SQRT(2E-3)**2 0.1414213562373095048801688724209698078569671875E-9999 = SQRT(2E-20000) 0.1999999999999999999999999999999999999999999998E-19999 = SQRT(2E-20000)**2 0.4472135954999579392818347337462552470881236719E-10000 = SQRT(2E-20001) 0.1999999999999999999999999999999999999999999999E-20000 = SQRT(2E-20001)**2 0.1772453850905516027298167483341145182797549495E 1 = SQRT( Pi ) -0.1000000000000000000000000000000000000000000000E-44 = SQRT( Pi )**2 - Pi 0.1648721270700128146848650787814163571653776100E 1 = SQRT( e ) -0.3000000000000000000000000000000000000000000000E-44 = SQRT( e )**2 - e 0.0000000000000000000000000000000000000000000000E 0 = SQRT(0) exception OK for SQRT(-1) 0.2718281828459045235360287471352662497757247094E 1 = NATURAL_E 0.2718281828459045235360287471352662497757247094E 1 = EXP(1) 0.1000000000000000000000000000000000000000000000E 1 = EXP(0) 0.1648721270700128146848650787814163571653776099E 1 = EXP(0.5) -0.1000000000000000000000000000000000000000000000E-44 = EXP(0.5) - SQRT(E) 0.6065306597126334236037995349911804534419181361E 0 = EXP(-0.5) 0.4000000000000000000000000000000000000000000000E-45 = EXP(-0.5) - 1/SQRT(E) 0.7389056098930650227230427460575007813180315572E 1 = EXP(2) 0.0000000000000000000000000000000000000000000000E 0 = EXP(2) - E*E 0.1353352832366126918939994949724844034076315458E 0 = EXP(-2) 0.0000000000000000000000000000000000000000000000E 0 = EXP(-2) - 1/E*E = 0.0 0.3678794411714423215955237701614608674458111309E 0 1/e 0.9765625000000000000000000000000000000000000000E-3 = 1/1024 0.2441406250000000000000000000000000000000000000E-3 = 1/4096 0.9536743164062500000000000000000000000000000000E-6 = 1/2**20 0.2202646579480671651695790064528424436635351262E 5 = EXP(10) 0.1101323287470339337723652455484636440290145119E 5 = SINH(10) 0.1101323292010332313972137609043787996345206143E 5 = COSH(10) 0.9999999958776927636195928371382757410508146183E 0 = TANH(10) 0.1000000004122307253373824184028080312460180026E 1 = COTH(10) 0.1100000000000000000000000000000000000000000000E 5 = 11000 for SINH and COSH 0.9998797734406568601609237791803751063294161240E 1 = ARCSINH(11000) 0.9998797730274337196650560047053970126218514380E 1 = ARCCOSH(1100) 0.9999990463256835937500000000000000000000000000E 0 = 1.0 - 1.0/2**20 0.7278045157460789803881506424625541533522717175E 1 = ARCTANH(1-2**-20) 0.1000000953674316406250000000000000000000000000E 1 = 1.0 + 1.0/2**20 0.7278045634297948007042646497041729945036956570E 1 = ARCCOTH(1+2**-20) 0.2314069263277926900572908636794854738026610945E 2 = EXP(PI) 0.1154873935725774837797733431538840968449519067E 2 = SINH(PI) 0.1159195327552152062775175205256013769577091877E 2 = COSH(PI) 0.9962720762207499442646905800125367118968991921E 0 = TANH(PI) 0.1003741873197321288201552691194800017462452421E 1 = COTH(PI) 0.3141592653589793238462643383279502884197169538E 1 = PI 0.7071067811865475244008443621048490392848359626E 0 = SIN(PI/4) 0.5000000000000000000000000000000000000000000352E 0 = 0.5 if SIN good 0.2617993877991494365385536152732919070164307948E 0 = PI/12 0.2588190451025207623488988376240483283490689125E 0 = SIN(PI/12) 0.2679491924311227064725536584941276330571947535E 0 = TAN(PI/12) 0.1047197551196597746154214461093167628065723179E 1 = PI/3 0.8660254037844386467637231707529361834714026496E 0 = SIN(PI/3) 0.1732050807568877293527446341505872366942805229E 1 = TAN(PI/3) 0.1308996938995747182692768076366459535082153974E 1 = 5 PI/12 0.1832595714594046055769875306913043349115015563E 1 = 7 PI/12 0.2094395102393195492308428922186335256131446358E 1 = 2 PI/3 0.2356194490192344928846982537459627163147877153E 1 = 3 PI/4 0.2617993877991494365385536152732919070164307948E 1 = 5 PI/6 0.2879793265790643801924089768006210977180738742E 1 =11 PI/12 0.6283185307179586476925286766559005768394339076E 1 = 2 PI 0.0000000000000000000000000000000000000000000000E 0 = SIN(5 PI/12) 0.3732050807568877293527446341505872366942805148E 1 = TAN(PI*5/12) -0.7071067811865475244008443621048490392848359626E 0 = SIN(-PI/4) 0.5000000000000000000000000000000000000000000352E 0 = 0.5 if SIN good 0.5235987755982988730771072305465838140328615896E 0 = PI/6 0.5000000000000000000000000000000000000000000201E 0 = SIN(PI/6) = 0.5 0.5773502691896257645091487805019574556476017593E 0 = TAN(PI/6) -0.5000000000000000000000000000000000000000000201E 0 = SIN(-PI/6) = -0.5 0.9999999999999983333333333333341666666666666660E-7 = SIN(0.00000001) -0.9999999999999983333333333333341666666666666660E-7 = SIN(0.00000001) 0.7853981633974483096156608458198757210492923710E 0 = ATAN2(1,1) -0.1350000000000000000000000000000000000000000000E-43 = 0.0 if ATAN2(1,1) OK 0.9983341664682815230681419841062202698991538800E-1 = Y 0.9950041652780257660955619878038702948385762326E 0 = X 0.9999999999999999999999999999999999999999999923E-1 = ATAN 0.1000000000000000000000000000000000000000000000E 0 = should be -0.8000000000000000000000000000000000000000000000E-45 = ATAN2 error at B=0.1 -0.9983341664682815230681419841062202698991538800E-1 = Y 0.9950041652780257660955619878038702948385762326E 0 = X -0.9999999999999999999999999999999999999999999923E-1 = ATAN -0.1000000000000000000000000000000000000000000000E 0 = should be 0.8000000000000000000000000000000000000000000000E-45 = ATAN2 error at B=-0.1 0.1986693307950612154594126271183897503702067296E 0 = Y 0.9800665778412416311241965167481688773935243753E 0 = X 0.1999999999999999999999999999999999999999999948E 0 = ATAN 0.2000000000000000000000000000000000000000000000E 0 = should be -0.5200000000000000000000000000000000000000000000E-44 = ATAN2 error at B=0.2 0.2955202066613395751053207456850273736778321116E 0 = Y 0.9553364891256060196423102275680498982442141026E 0 = X 0.3000000000000000000000000000000000000000000192E 0 = ATAN 0.3000000000000000000000000000000000000000000000E 0 = should be 0.1920000000000000000000000000000000000000000000E-43 = ATAN2 error at B=0.3 0.3894183423086504916663117567957052645930601836E 0 = Y 0.9210609940028850827985267320518016140258595961E 0 = X 0.4000000000000000000000000000000000000000000124E 0 = ATAN 0.4000000000000000000000000000000000000000000000E 0 = should be 0.1240000000000000000000000000000000000000000000E-43 = ATAN2 error at B=0.4 0.9974949866040544309417233711414873227066514255E 0 = Y 0.7073720166770291008818985143426870908509109669E-1 = X 0.7079632679489661923132169163975144209858476900E-1 = ATAN 0.1500000000000000000000000000000000000000000000E 1 = should be -0.1429203673205103380768678308360248557901415231E 1 = ATAN2 error at B=1.5 0.1000000000000000000000000000000000000000000000E 1 = Y 0.0000000000000000000000000000000000000000000000E 0 = X 0.0000000000000000000000000000000000000000000000E 0 = ATAN 0.1570796326794896619231321691639751442098584769E 1 = should be -0.1570796326794896619231321691639751442098584769E 1 = ATAN2 error at B=0.1 0.2302585092994045684017991454684364207601101489E 1 = LN_10 0.2302585092994045684017991454684364207601101490E 1 = LOG(10) 0.1000000000000000000000000000000000000000000000E 2 =EXP(LN_10)=10.0 0.6931471805599453094172321214581765680755001340E 0 = LN_2 0.6931471805599453094172321214581765680755001350E 0 = LOG(2) 0.1999999999999999999999999999999999999999999998E 1 =EXP(LN_2)=2.0 0.1000000000000000000000000000000000000000000001E 1 = LOG(E) = 1.0 0.1144729885849400174143427351353058711647294858E 1 = LOG(Pi) 0.2314069263277926900572908636794854738026610945E 2 = EXP(Pi) 0.2000000000000000000000000000000000000000000000E 1 = LOG(E**2) = 2.0 0.3000000000000000000000000000000000000000000002E 1 = LOG(E**3) = 3.0 -0.9999999999999999999999999999999999999999999997E 0 = LOG(1/E) = -1.0 0.9999999999999999999999999999999999999999999982E 6 = EXP(LOG(10**6)) 0.1000000000000000000000000000000000000000000000E-999 = 1E-1000 0.1000000000000000000000000000000000000000000825E-999 = EXP(LOG(10**-1000)) 0.1000000000000000000000000000000000000000000000E 1 = 1 by GET 0.1000000000000000000000000000000000000000000000E 0 = 1 by PUT 0.1000000000000000000000000000000000000000000000E 0 = from file 0.1000000000000000000000000000000000000000000000E 2 = 10 0.1000000000000000000000000000000000000000000000E 0 =. 1 0.1000000000000000000000000000000000000000000000E-1 = .01 0.1000000000000000000000000000000000000000000000E-1 = 0.01 0.1000000000000000000000000000000000000000000000E 12 = +0.1e+12 -0.1234567890000000000000000000000000000000000000E-1234567891 = -00.0123_4567890E-12345_67890 0<1 0<0 0<-1 1<0 -1<0 -1<-1 1<1 100<1 -100<-1 1<100 -1<-100 SMALL < MEDIUM MEDIUM < LARGE MEDIUM < SMALL MEDIUM < MEDIUM SMALL <= MEDIUM MEDIUM <= LARGE MEDIUM <= SMALL MEDIUM <= MEDIUM MEDIUM = MEDIUM SMALL = MEDIUM MEDIUM /= MEDIUM SMALL /= MEDIUM SMALL > MEDIUM MEDIUM > LARGE MEDIUM > SMALL MEDIUM > MEDIUM SMALL >= MEDIUM MEDIUM >= LARGE MEDIUM >= SMALL MEDIUM >= MEDIUM 12345800 >= 12345797 0.3000000000000000000000000000000000000000000000E 1 = 3 0.1000000000000000000000000000000000000000000000E 0 = 100.0 DE_FLOATED mantissa 1 = SIGN, 3 = EXPONENT 0.1000000000000000000000000000000000000000000000E 3 = 100.0 RE_FLOATed -0.1000000000000000000000000000000000000000000000E-3 = -0.01 by RE-FLOAT 0.2000000000000000000000000000000000000000000000E 1 = 2 from 8 rem 3 0.2666666666666666666666666666666666666666666666E 1 = 2.666... 0.3000000000000000000000000000000000000000000000E 1 = 3 from C+C+3 rem C 0.2000000242997677671194496394197960650090067089E 1 = 2.0+ 0.3000000000000000000000000000000000000000000000E 1 = 3 from C*C+3 rem C 0.1234579700000024299767767119449639419796065009E 8 = 12345797+ 0.1000000000000000000000000000000000000000000000E-44 = DIGITS_EPSILON 0.1000000000000000000000000000000000000000000001E 1 = 1+DIGITS_EPSILON 0.1000000000000000000000000000000000000000000000E 1 = 1+DIGITS_EPSILON-DIGITS_EPSILON 0.9999999999999999999999999999999999999999999990E 0 = 1-DIGITS_EPSILON 0.1000000000000000000000000000000000000000000000E 1 = 1-DIGITS_EPSILON+DIGITS_EPSILON 0.1000000000000000000000000000000000000000000001E 1 = 1+DIGITS_EPSILON/2 0.1000000000000000000000000000000000000000000000E 1 = 1+DIGITS_EPSILON/2-DIGITS_EPSILON/2 0.9999999999999999999999999999999999999999999990E 0 = 1-DIGITS_EPSILON/2 0.9999999999999999999999999999999999999999999995E 0 = 1-DIGITS_EPSILON/2+DIGITS_EPSILON/2 -0.1000000000000000000000000000000000000000000000E-44 = 1-(1+EPSILON) 0.1000000000000000000000000000000000000000000000E-44 = (1+EPSILON)-1 0.9999999999999999999999999999999999999999999999E 0 = ALL 9'S 0.0000000000000000000000000000000000000000000000E 0 = 1-.999... 0.9999999999999999999999999999999999999999999990E 2147483647 = DIGITS_LAST -0.9999999999999999999999999999999999999999999990E 2147483647 = DIGITS_FIRST 0.1000000000000000000000000000000000000000000001E-2147483646 = DIGITS_SMALL end Test Generic Digits Arithmetic