17db96d56Sopenharmony_ci------------------------------------------------------------------------ 27db96d56Sopenharmony_ci-- dqRemainderNear.decTest -- decQuad remainder-near -- 37db96d56Sopenharmony_ci-- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. -- 47db96d56Sopenharmony_ci------------------------------------------------------------------------ 57db96d56Sopenharmony_ci-- Please see the document "General Decimal Arithmetic Testcases" -- 67db96d56Sopenharmony_ci-- at http://www2.hursley.ibm.com/decimal for the description of -- 77db96d56Sopenharmony_ci-- these testcases. -- 87db96d56Sopenharmony_ci-- -- 97db96d56Sopenharmony_ci-- These testcases are experimental ('beta' versions), and they -- 107db96d56Sopenharmony_ci-- may contain errors. They are offered on an as-is basis. In -- 117db96d56Sopenharmony_ci-- particular, achieving the same results as the tests here is not -- 127db96d56Sopenharmony_ci-- a guarantee that an implementation complies with any Standard -- 137db96d56Sopenharmony_ci-- or specification. The tests are not exhaustive. -- 147db96d56Sopenharmony_ci-- -- 157db96d56Sopenharmony_ci-- Please send comments, suggestions, and corrections to the author: -- 167db96d56Sopenharmony_ci-- Mike Cowlishaw, IBM Fellow -- 177db96d56Sopenharmony_ci-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK -- 187db96d56Sopenharmony_ci-- mfc@uk.ibm.com -- 197db96d56Sopenharmony_ci------------------------------------------------------------------------ 207db96d56Sopenharmony_civersion: 2.59 217db96d56Sopenharmony_ci 227db96d56Sopenharmony_ciextended: 1 237db96d56Sopenharmony_ciclamp: 1 247db96d56Sopenharmony_ciprecision: 34 257db96d56Sopenharmony_cimaxExponent: 6144 267db96d56Sopenharmony_ciminExponent: -6143 277db96d56Sopenharmony_cirounding: half_even 287db96d56Sopenharmony_ci 297db96d56Sopenharmony_ci-- sanity checks (as base, above) 307db96d56Sopenharmony_cidqrmn001 remaindernear 1 1 -> 0 317db96d56Sopenharmony_cidqrmn002 remaindernear 2 1 -> 0 327db96d56Sopenharmony_cidqrmn003 remaindernear 1 2 -> 1 337db96d56Sopenharmony_cidqrmn004 remaindernear 2 2 -> 0 347db96d56Sopenharmony_cidqrmn005 remaindernear 0 1 -> 0 357db96d56Sopenharmony_cidqrmn006 remaindernear 0 2 -> 0 367db96d56Sopenharmony_cidqrmn007 remaindernear 1 3 -> 1 377db96d56Sopenharmony_cidqrmn008 remaindernear 2 3 -> -1 387db96d56Sopenharmony_cidqrmn009 remaindernear 3 3 -> 0 397db96d56Sopenharmony_ci 407db96d56Sopenharmony_cidqrmn010 remaindernear 2.4 1 -> 0.4 417db96d56Sopenharmony_cidqrmn011 remaindernear 2.4 -1 -> 0.4 427db96d56Sopenharmony_cidqrmn012 remaindernear -2.4 1 -> -0.4 437db96d56Sopenharmony_cidqrmn013 remaindernear -2.4 -1 -> -0.4 447db96d56Sopenharmony_cidqrmn014 remaindernear 2.40 1 -> 0.40 457db96d56Sopenharmony_cidqrmn015 remaindernear 2.400 1 -> 0.400 467db96d56Sopenharmony_cidqrmn016 remaindernear 2.4 2 -> 0.4 477db96d56Sopenharmony_cidqrmn017 remaindernear 2.400 2 -> 0.400 487db96d56Sopenharmony_cidqrmn018 remaindernear 2. 2 -> 0 497db96d56Sopenharmony_cidqrmn019 remaindernear 20 20 -> 0 507db96d56Sopenharmony_ci 517db96d56Sopenharmony_cidqrmn020 remaindernear 187 187 -> 0 527db96d56Sopenharmony_cidqrmn021 remaindernear 5 2 -> 1 537db96d56Sopenharmony_cidqrmn022 remaindernear 5 2.0 -> 1.0 547db96d56Sopenharmony_cidqrmn023 remaindernear 5 2.000 -> 1.000 557db96d56Sopenharmony_cidqrmn024 remaindernear 5 0.200 -> 0.000 567db96d56Sopenharmony_cidqrmn025 remaindernear 5 0.200 -> 0.000 577db96d56Sopenharmony_ci 587db96d56Sopenharmony_cidqrmn030 remaindernear 1 2 -> 1 597db96d56Sopenharmony_cidqrmn031 remaindernear 1 4 -> 1 607db96d56Sopenharmony_cidqrmn032 remaindernear 1 8 -> 1 617db96d56Sopenharmony_ci 627db96d56Sopenharmony_cidqrmn033 remaindernear 1 16 -> 1 637db96d56Sopenharmony_cidqrmn034 remaindernear 1 32 -> 1 647db96d56Sopenharmony_cidqrmn035 remaindernear 1 64 -> 1 657db96d56Sopenharmony_cidqrmn040 remaindernear 1 -2 -> 1 667db96d56Sopenharmony_cidqrmn041 remaindernear 1 -4 -> 1 677db96d56Sopenharmony_cidqrmn042 remaindernear 1 -8 -> 1 687db96d56Sopenharmony_cidqrmn043 remaindernear 1 -16 -> 1 697db96d56Sopenharmony_cidqrmn044 remaindernear 1 -32 -> 1 707db96d56Sopenharmony_cidqrmn045 remaindernear 1 -64 -> 1 717db96d56Sopenharmony_cidqrmn050 remaindernear -1 2 -> -1 727db96d56Sopenharmony_cidqrmn051 remaindernear -1 4 -> -1 737db96d56Sopenharmony_cidqrmn052 remaindernear -1 8 -> -1 747db96d56Sopenharmony_cidqrmn053 remaindernear -1 16 -> -1 757db96d56Sopenharmony_cidqrmn054 remaindernear -1 32 -> -1 767db96d56Sopenharmony_cidqrmn055 remaindernear -1 64 -> -1 777db96d56Sopenharmony_cidqrmn060 remaindernear -1 -2 -> -1 787db96d56Sopenharmony_cidqrmn061 remaindernear -1 -4 -> -1 797db96d56Sopenharmony_cidqrmn062 remaindernear -1 -8 -> -1 807db96d56Sopenharmony_cidqrmn063 remaindernear -1 -16 -> -1 817db96d56Sopenharmony_cidqrmn064 remaindernear -1 -32 -> -1 827db96d56Sopenharmony_cidqrmn065 remaindernear -1 -64 -> -1 837db96d56Sopenharmony_ci 847db96d56Sopenharmony_cidqrmn066 remaindernear 9.9 1 -> -0.1 857db96d56Sopenharmony_cidqrmn067 remaindernear 99.7 1 -> -0.3 867db96d56Sopenharmony_cidqrmn068 remaindernear 999999999 1 -> 0 877db96d56Sopenharmony_cidqrmn069 remaindernear 999999999.4 1 -> 0.4 887db96d56Sopenharmony_cidqrmn070 remaindernear 999999999.5 1 -> -0.5 897db96d56Sopenharmony_cidqrmn071 remaindernear 999999999.9 1 -> -0.1 907db96d56Sopenharmony_cidqrmn072 remaindernear 999999999.999 1 -> -0.001 917db96d56Sopenharmony_cidqrmn073 remaindernear 999999.999999 1 -> -0.000001 927db96d56Sopenharmony_cidqrmn074 remaindernear 9 1 -> 0 937db96d56Sopenharmony_cidqrmn075 remaindernear 9999999999999999 1 -> 0 947db96d56Sopenharmony_cidqrmn076 remaindernear 9999999999999999 2 -> -1 957db96d56Sopenharmony_cidqrmn077 remaindernear 9999999999999999 3 -> 0 967db96d56Sopenharmony_cidqrmn078 remaindernear 9999999999999999 4 -> -1 977db96d56Sopenharmony_ci 987db96d56Sopenharmony_cidqrmn080 remaindernear 0. 1 -> 0 997db96d56Sopenharmony_cidqrmn081 remaindernear .0 1 -> 0.0 1007db96d56Sopenharmony_cidqrmn082 remaindernear 0.00 1 -> 0.00 1017db96d56Sopenharmony_cidqrmn083 remaindernear 0.00E+9 1 -> 0 1027db96d56Sopenharmony_cidqrmn084 remaindernear 0.00E+3 1 -> 0 1037db96d56Sopenharmony_cidqrmn085 remaindernear 0.00E+2 1 -> 0 1047db96d56Sopenharmony_cidqrmn086 remaindernear 0.00E+1 1 -> 0.0 1057db96d56Sopenharmony_cidqrmn087 remaindernear 0.00E+0 1 -> 0.00 1067db96d56Sopenharmony_cidqrmn088 remaindernear 0.00E-0 1 -> 0.00 1077db96d56Sopenharmony_cidqrmn089 remaindernear 0.00E-1 1 -> 0.000 1087db96d56Sopenharmony_cidqrmn090 remaindernear 0.00E-2 1 -> 0.0000 1097db96d56Sopenharmony_cidqrmn091 remaindernear 0.00E-3 1 -> 0.00000 1107db96d56Sopenharmony_cidqrmn092 remaindernear 0.00E-4 1 -> 0.000000 1117db96d56Sopenharmony_cidqrmn093 remaindernear 0.00E-5 1 -> 0E-7 1127db96d56Sopenharmony_cidqrmn094 remaindernear 0.00E-6 1 -> 0E-8 1137db96d56Sopenharmony_cidqrmn095 remaindernear 0.0000E-50 1 -> 0E-54 1147db96d56Sopenharmony_ci 1157db96d56Sopenharmony_ci-- Various flavours of remaindernear by 0 1167db96d56Sopenharmony_cidqrmn101 remaindernear 0 0 -> NaN Division_undefined 1177db96d56Sopenharmony_cidqrmn102 remaindernear 0 -0 -> NaN Division_undefined 1187db96d56Sopenharmony_cidqrmn103 remaindernear -0 0 -> NaN Division_undefined 1197db96d56Sopenharmony_cidqrmn104 remaindernear -0 -0 -> NaN Division_undefined 1207db96d56Sopenharmony_cidqrmn105 remaindernear 0.0E5 0 -> NaN Division_undefined 1217db96d56Sopenharmony_cidqrmn106 remaindernear 0.000 0 -> NaN Division_undefined 1227db96d56Sopenharmony_ci-- [Some think this next group should be Division_by_zero exception, but 1237db96d56Sopenharmony_ci-- IEEE 854 is explicit that it is Invalid operation .. for 1247db96d56Sopenharmony_ci-- remainder-near, anyway] 1257db96d56Sopenharmony_cidqrmn107 remaindernear 0.0001 0 -> NaN Invalid_operation 1267db96d56Sopenharmony_cidqrmn108 remaindernear 0.01 0 -> NaN Invalid_operation 1277db96d56Sopenharmony_cidqrmn109 remaindernear 0.1 0 -> NaN Invalid_operation 1287db96d56Sopenharmony_cidqrmn110 remaindernear 1 0 -> NaN Invalid_operation 1297db96d56Sopenharmony_cidqrmn111 remaindernear 1 0.0 -> NaN Invalid_operation 1307db96d56Sopenharmony_cidqrmn112 remaindernear 10 0.0 -> NaN Invalid_operation 1317db96d56Sopenharmony_cidqrmn113 remaindernear 1E+100 0.0 -> NaN Invalid_operation 1327db96d56Sopenharmony_cidqrmn114 remaindernear 1E+380 0 -> NaN Invalid_operation 1337db96d56Sopenharmony_cidqrmn115 remaindernear 0.0001 -0 -> NaN Invalid_operation 1347db96d56Sopenharmony_cidqrmn116 remaindernear 0.01 -0 -> NaN Invalid_operation 1357db96d56Sopenharmony_cidqrmn119 remaindernear 0.1 -0 -> NaN Invalid_operation 1367db96d56Sopenharmony_cidqrmn120 remaindernear 1 -0 -> NaN Invalid_operation 1377db96d56Sopenharmony_cidqrmn121 remaindernear 1 -0.0 -> NaN Invalid_operation 1387db96d56Sopenharmony_cidqrmn122 remaindernear 10 -0.0 -> NaN Invalid_operation 1397db96d56Sopenharmony_cidqrmn123 remaindernear 1E+100 -0.0 -> NaN Invalid_operation 1407db96d56Sopenharmony_cidqrmn124 remaindernear 1E+384 -0 -> NaN Invalid_operation 1417db96d56Sopenharmony_ci-- and zeros on left 1427db96d56Sopenharmony_cidqrmn130 remaindernear 0 1 -> 0 1437db96d56Sopenharmony_cidqrmn131 remaindernear 0 -1 -> 0 1447db96d56Sopenharmony_cidqrmn132 remaindernear 0.0 1 -> 0.0 1457db96d56Sopenharmony_cidqrmn133 remaindernear 0.0 -1 -> 0.0 1467db96d56Sopenharmony_cidqrmn134 remaindernear -0 1 -> -0 1477db96d56Sopenharmony_cidqrmn135 remaindernear -0 -1 -> -0 1487db96d56Sopenharmony_cidqrmn136 remaindernear -0.0 1 -> -0.0 1497db96d56Sopenharmony_cidqrmn137 remaindernear -0.0 -1 -> -0.0 1507db96d56Sopenharmony_ci 1517db96d56Sopenharmony_ci-- 0.5ers 1527db96d56Sopenharmony_cidqrmn143 remaindernear 0.5 2 -> 0.5 1537db96d56Sopenharmony_cidqrmn144 remaindernear 0.5 2.1 -> 0.5 1547db96d56Sopenharmony_cidqrmn145 remaindernear 0.5 2.01 -> 0.50 1557db96d56Sopenharmony_cidqrmn146 remaindernear 0.5 2.001 -> 0.500 1567db96d56Sopenharmony_cidqrmn147 remaindernear 0.50 2 -> 0.50 1577db96d56Sopenharmony_cidqrmn148 remaindernear 0.50 2.01 -> 0.50 1587db96d56Sopenharmony_cidqrmn149 remaindernear 0.50 2.001 -> 0.500 1597db96d56Sopenharmony_ci 1607db96d56Sopenharmony_ci-- steadies 1617db96d56Sopenharmony_cidqrmn150 remaindernear 1 1 -> 0 1627db96d56Sopenharmony_cidqrmn151 remaindernear 1 2 -> 1 1637db96d56Sopenharmony_cidqrmn152 remaindernear 1 3 -> 1 1647db96d56Sopenharmony_cidqrmn153 remaindernear 1 4 -> 1 1657db96d56Sopenharmony_cidqrmn154 remaindernear 1 5 -> 1 1667db96d56Sopenharmony_cidqrmn155 remaindernear 1 6 -> 1 1677db96d56Sopenharmony_cidqrmn156 remaindernear 1 7 -> 1 1687db96d56Sopenharmony_cidqrmn157 remaindernear 1 8 -> 1 1697db96d56Sopenharmony_cidqrmn158 remaindernear 1 9 -> 1 1707db96d56Sopenharmony_cidqrmn159 remaindernear 1 10 -> 1 1717db96d56Sopenharmony_cidqrmn160 remaindernear 1 1 -> 0 1727db96d56Sopenharmony_cidqrmn161 remaindernear 2 1 -> 0 1737db96d56Sopenharmony_cidqrmn162 remaindernear 3 1 -> 0 1747db96d56Sopenharmony_cidqrmn163 remaindernear 4 1 -> 0 1757db96d56Sopenharmony_cidqrmn164 remaindernear 5 1 -> 0 1767db96d56Sopenharmony_cidqrmn165 remaindernear 6 1 -> 0 1777db96d56Sopenharmony_cidqrmn166 remaindernear 7 1 -> 0 1787db96d56Sopenharmony_cidqrmn167 remaindernear 8 1 -> 0 1797db96d56Sopenharmony_cidqrmn168 remaindernear 9 1 -> 0 1807db96d56Sopenharmony_cidqrmn169 remaindernear 10 1 -> 0 1817db96d56Sopenharmony_ci 1827db96d56Sopenharmony_ci-- some differences from remainder 1837db96d56Sopenharmony_cidqrmn171 remaindernear 0.4 1.020 -> 0.400 1847db96d56Sopenharmony_cidqrmn172 remaindernear 0.50 1.020 -> 0.500 1857db96d56Sopenharmony_cidqrmn173 remaindernear 0.51 1.020 -> 0.510 1867db96d56Sopenharmony_cidqrmn174 remaindernear 0.52 1.020 -> -0.500 1877db96d56Sopenharmony_cidqrmn175 remaindernear 0.6 1.020 -> -0.420 1887db96d56Sopenharmony_ci 1897db96d56Sopenharmony_ci-- More flavours of remaindernear by 0 1907db96d56Sopenharmony_cidqrmn201 remaindernear 0 0 -> NaN Division_undefined 1917db96d56Sopenharmony_cidqrmn202 remaindernear 0.0E5 0 -> NaN Division_undefined 1927db96d56Sopenharmony_cidqrmn203 remaindernear 0.000 0 -> NaN Division_undefined 1937db96d56Sopenharmony_cidqrmn204 remaindernear 0.0001 0 -> NaN Invalid_operation 1947db96d56Sopenharmony_cidqrmn205 remaindernear 0.01 0 -> NaN Invalid_operation 1957db96d56Sopenharmony_cidqrmn206 remaindernear 0.1 0 -> NaN Invalid_operation 1967db96d56Sopenharmony_cidqrmn207 remaindernear 1 0 -> NaN Invalid_operation 1977db96d56Sopenharmony_cidqrmn208 remaindernear 1 0.0 -> NaN Invalid_operation 1987db96d56Sopenharmony_cidqrmn209 remaindernear 10 0.0 -> NaN Invalid_operation 1997db96d56Sopenharmony_cidqrmn210 remaindernear 1E+100 0.0 -> NaN Invalid_operation 2007db96d56Sopenharmony_cidqrmn211 remaindernear 1E+380 0 -> NaN Invalid_operation 2017db96d56Sopenharmony_ci 2027db96d56Sopenharmony_ci-- tests from the extended specification 2037db96d56Sopenharmony_cidqrmn221 remaindernear 2.1 3 -> -0.9 2047db96d56Sopenharmony_cidqrmn222 remaindernear 10 6 -> -2 2057db96d56Sopenharmony_cidqrmn223 remaindernear 10 3 -> 1 2067db96d56Sopenharmony_cidqrmn224 remaindernear -10 3 -> -1 2077db96d56Sopenharmony_cidqrmn225 remaindernear 10.2 1 -> 0.2 2087db96d56Sopenharmony_cidqrmn226 remaindernear 10 0.3 -> 0.1 2097db96d56Sopenharmony_cidqrmn227 remaindernear 3.6 1.3 -> -0.3 2107db96d56Sopenharmony_ci 2117db96d56Sopenharmony_ci-- some differences from remainder 2127db96d56Sopenharmony_cidqrmn231 remaindernear -0.4 1.020 -> -0.400 2137db96d56Sopenharmony_cidqrmn232 remaindernear -0.50 1.020 -> -0.500 2147db96d56Sopenharmony_cidqrmn233 remaindernear -0.51 1.020 -> -0.510 2157db96d56Sopenharmony_cidqrmn234 remaindernear -0.52 1.020 -> 0.500 2167db96d56Sopenharmony_cidqrmn235 remaindernear -0.6 1.020 -> 0.420 2177db96d56Sopenharmony_ci 2187db96d56Sopenharmony_ci-- high Xs 2197db96d56Sopenharmony_cidqrmn240 remaindernear 1E+2 1.00 -> 0.00 2207db96d56Sopenharmony_ci 2217db96d56Sopenharmony_ci-- dqrmn3xx are from DiagBigDecimal 2227db96d56Sopenharmony_cidqrmn301 remaindernear 1 3 -> 1 2237db96d56Sopenharmony_cidqrmn302 remaindernear 5 5 -> 0 2247db96d56Sopenharmony_cidqrmn303 remaindernear 13 10 -> 3 2257db96d56Sopenharmony_cidqrmn304 remaindernear 13 50 -> 13 2267db96d56Sopenharmony_cidqrmn305 remaindernear 13 100 -> 13 2277db96d56Sopenharmony_cidqrmn306 remaindernear 13 1000 -> 13 2287db96d56Sopenharmony_cidqrmn307 remaindernear .13 1 -> 0.13 2297db96d56Sopenharmony_cidqrmn308 remaindernear 0.133 1 -> 0.133 2307db96d56Sopenharmony_cidqrmn309 remaindernear 0.1033 1 -> 0.1033 2317db96d56Sopenharmony_cidqrmn310 remaindernear 1.033 1 -> 0.033 2327db96d56Sopenharmony_cidqrmn311 remaindernear 10.33 1 -> 0.33 2337db96d56Sopenharmony_cidqrmn312 remaindernear 10.33 10 -> 0.33 2347db96d56Sopenharmony_cidqrmn313 remaindernear 103.3 1 -> 0.3 2357db96d56Sopenharmony_cidqrmn314 remaindernear 133 10 -> 3 2367db96d56Sopenharmony_cidqrmn315 remaindernear 1033 10 -> 3 2377db96d56Sopenharmony_cidqrmn316 remaindernear 1033 50 -> -17 2387db96d56Sopenharmony_cidqrmn317 remaindernear 101.0 3 -> -1.0 2397db96d56Sopenharmony_cidqrmn318 remaindernear 102.0 3 -> 0.0 2407db96d56Sopenharmony_cidqrmn319 remaindernear 103.0 3 -> 1.0 2417db96d56Sopenharmony_cidqrmn320 remaindernear 2.40 1 -> 0.40 2427db96d56Sopenharmony_cidqrmn321 remaindernear 2.400 1 -> 0.400 2437db96d56Sopenharmony_cidqrmn322 remaindernear 2.4 1 -> 0.4 2447db96d56Sopenharmony_cidqrmn323 remaindernear 2.4 2 -> 0.4 2457db96d56Sopenharmony_cidqrmn324 remaindernear 2.400 2 -> 0.400 2467db96d56Sopenharmony_cidqrmn325 remaindernear 1 0.3 -> 0.1 2477db96d56Sopenharmony_cidqrmn326 remaindernear 1 0.30 -> 0.10 2487db96d56Sopenharmony_cidqrmn327 remaindernear 1 0.300 -> 0.100 2497db96d56Sopenharmony_cidqrmn328 remaindernear 1 0.3000 -> 0.1000 2507db96d56Sopenharmony_cidqrmn329 remaindernear 1.0 0.3 -> 0.1 2517db96d56Sopenharmony_cidqrmn330 remaindernear 1.00 0.3 -> 0.10 2527db96d56Sopenharmony_cidqrmn331 remaindernear 1.000 0.3 -> 0.100 2537db96d56Sopenharmony_cidqrmn332 remaindernear 1.0000 0.3 -> 0.1000 2547db96d56Sopenharmony_cidqrmn333 remaindernear 0.5 2 -> 0.5 2557db96d56Sopenharmony_cidqrmn334 remaindernear 0.5 2.1 -> 0.5 2567db96d56Sopenharmony_cidqrmn335 remaindernear 0.5 2.01 -> 0.50 2577db96d56Sopenharmony_cidqrmn336 remaindernear 0.5 2.001 -> 0.500 2587db96d56Sopenharmony_cidqrmn337 remaindernear 0.50 2 -> 0.50 2597db96d56Sopenharmony_cidqrmn338 remaindernear 0.50 2.01 -> 0.50 2607db96d56Sopenharmony_cidqrmn339 remaindernear 0.50 2.001 -> 0.500 2617db96d56Sopenharmony_ci 2627db96d56Sopenharmony_cidqrmn340 remaindernear 0.5 0.5000001 -> -1E-7 2637db96d56Sopenharmony_cidqrmn341 remaindernear 0.5 0.50000001 -> -1E-8 2647db96d56Sopenharmony_cidqrmn342 remaindernear 0.5 0.500000001 -> -1E-9 2657db96d56Sopenharmony_cidqrmn343 remaindernear 0.5 0.5000000001 -> -1E-10 2667db96d56Sopenharmony_cidqrmn344 remaindernear 0.5 0.50000000001 -> -1E-11 2677db96d56Sopenharmony_cidqrmn345 remaindernear 0.5 0.4999999 -> 1E-7 2687db96d56Sopenharmony_cidqrmn346 remaindernear 0.5 0.49999999 -> 1E-8 2697db96d56Sopenharmony_cidqrmn347 remaindernear 0.5 0.499999999 -> 1E-9 2707db96d56Sopenharmony_cidqrmn348 remaindernear 0.5 0.4999999999 -> 1E-10 2717db96d56Sopenharmony_cidqrmn349 remaindernear 0.5 0.49999999999 -> 1E-11 2727db96d56Sopenharmony_cidqrmn350 remaindernear 0.5 0.499999999999 -> 1E-12 2737db96d56Sopenharmony_ci 2747db96d56Sopenharmony_cidqrmn351 remaindernear 0.03 7 -> 0.03 2757db96d56Sopenharmony_cidqrmn352 remaindernear 5 2 -> 1 2767db96d56Sopenharmony_cidqrmn353 remaindernear 4.1 2 -> 0.1 2777db96d56Sopenharmony_cidqrmn354 remaindernear 4.01 2 -> 0.01 2787db96d56Sopenharmony_cidqrmn355 remaindernear 4.001 2 -> 0.001 2797db96d56Sopenharmony_cidqrmn356 remaindernear 4.0001 2 -> 0.0001 2807db96d56Sopenharmony_cidqrmn357 remaindernear 4.00001 2 -> 0.00001 2817db96d56Sopenharmony_cidqrmn358 remaindernear 4.000001 2 -> 0.000001 2827db96d56Sopenharmony_cidqrmn359 remaindernear 4.0000001 2 -> 1E-7 2837db96d56Sopenharmony_ci 2847db96d56Sopenharmony_cidqrmn360 remaindernear 1.2 0.7345 -> -0.2690 2857db96d56Sopenharmony_cidqrmn361 remaindernear 0.8 12 -> 0.8 2867db96d56Sopenharmony_cidqrmn362 remaindernear 0.8 0.2 -> 0.0 2877db96d56Sopenharmony_cidqrmn363 remaindernear 0.8 0.3 -> -0.1 2887db96d56Sopenharmony_cidqrmn364 remaindernear 0.800 12 -> 0.800 2897db96d56Sopenharmony_cidqrmn365 remaindernear 0.800 1.7 -> 0.800 2907db96d56Sopenharmony_cidqrmn366 remaindernear 2.400 2 -> 0.400 2917db96d56Sopenharmony_ci 2927db96d56Sopenharmony_ci-- round to even 2937db96d56Sopenharmony_cidqrmn371 remaindernear 121 2 -> 1 2947db96d56Sopenharmony_cidqrmn372 remaindernear 122 2 -> 0 2957db96d56Sopenharmony_cidqrmn373 remaindernear 123 2 -> -1 2967db96d56Sopenharmony_cidqrmn374 remaindernear 124 2 -> 0 2977db96d56Sopenharmony_cidqrmn375 remaindernear 125 2 -> 1 2987db96d56Sopenharmony_cidqrmn376 remaindernear 126 2 -> 0 2997db96d56Sopenharmony_cidqrmn377 remaindernear 127 2 -> -1 3007db96d56Sopenharmony_ci 3017db96d56Sopenharmony_cidqrmn381 remaindernear 12345 1 -> 0 3027db96d56Sopenharmony_cidqrmn382 remaindernear 12345 1.0001 -> -0.2344 3037db96d56Sopenharmony_cidqrmn383 remaindernear 12345 1.001 -> -0.333 3047db96d56Sopenharmony_cidqrmn384 remaindernear 12345 1.01 -> -0.23 3057db96d56Sopenharmony_cidqrmn385 remaindernear 12345 1.1 -> -0.3 3067db96d56Sopenharmony_cidqrmn386 remaindernear 12355 4 -> -1 3077db96d56Sopenharmony_cidqrmn387 remaindernear 12345 4 -> 1 3087db96d56Sopenharmony_cidqrmn388 remaindernear 12355 4.0001 -> -1.3089 3097db96d56Sopenharmony_cidqrmn389 remaindernear 12345 4.0001 -> 0.6914 3107db96d56Sopenharmony_cidqrmn390 remaindernear 12345 4.9 -> 1.9 3117db96d56Sopenharmony_cidqrmn391 remaindernear 12345 4.99 -> -0.26 3127db96d56Sopenharmony_cidqrmn392 remaindernear 12345 4.999 -> 2.469 3137db96d56Sopenharmony_cidqrmn393 remaindernear 12345 4.9999 -> 0.2469 3147db96d56Sopenharmony_cidqrmn394 remaindernear 12345 5 -> 0 3157db96d56Sopenharmony_cidqrmn395 remaindernear 12345 5.0001 -> -0.2469 3167db96d56Sopenharmony_cidqrmn396 remaindernear 12345 5.001 -> -2.469 3177db96d56Sopenharmony_cidqrmn397 remaindernear 12345 5.01 -> 0.36 3187db96d56Sopenharmony_cidqrmn398 remaindernear 12345 5.1 -> -2.1 3197db96d56Sopenharmony_ci 3207db96d56Sopenharmony_ci-- the nasty division-by-1 cases 3217db96d56Sopenharmony_cidqrmn401 remaindernear 0.4 1 -> 0.4 3227db96d56Sopenharmony_cidqrmn402 remaindernear 0.45 1 -> 0.45 3237db96d56Sopenharmony_cidqrmn403 remaindernear 0.455 1 -> 0.455 3247db96d56Sopenharmony_cidqrmn404 remaindernear 0.4555 1 -> 0.4555 3257db96d56Sopenharmony_cidqrmn405 remaindernear 0.45555 1 -> 0.45555 3267db96d56Sopenharmony_cidqrmn406 remaindernear 0.455555 1 -> 0.455555 3277db96d56Sopenharmony_cidqrmn407 remaindernear 0.4555555 1 -> 0.4555555 3287db96d56Sopenharmony_cidqrmn408 remaindernear 0.45555555 1 -> 0.45555555 3297db96d56Sopenharmony_cidqrmn409 remaindernear 0.455555555 1 -> 0.455555555 3307db96d56Sopenharmony_ci-- with spill... [412 exercises sticktab loop] 3317db96d56Sopenharmony_cidqrmn411 remaindernear 0.5 1 -> 0.5 3327db96d56Sopenharmony_cidqrmn412 remaindernear 0.55 1 -> -0.45 3337db96d56Sopenharmony_cidqrmn413 remaindernear 0.555 1 -> -0.445 3347db96d56Sopenharmony_cidqrmn414 remaindernear 0.5555 1 -> -0.4445 3357db96d56Sopenharmony_cidqrmn415 remaindernear 0.55555 1 -> -0.44445 3367db96d56Sopenharmony_cidqrmn416 remaindernear 0.555555 1 -> -0.444445 3377db96d56Sopenharmony_cidqrmn417 remaindernear 0.5555555 1 -> -0.4444445 3387db96d56Sopenharmony_cidqrmn418 remaindernear 0.55555555 1 -> -0.44444445 3397db96d56Sopenharmony_cidqrmn419 remaindernear 0.555555555 1 -> -0.444444445 3407db96d56Sopenharmony_ci 3417db96d56Sopenharmony_ci-- folddowns 3427db96d56Sopenharmony_cidqrmn421 remaindernear 1E+6144 1 -> NaN Division_impossible 3437db96d56Sopenharmony_cidqrmn422 remaindernear 1E+6144 1E+6143 -> 0E+6111 Clamped 3447db96d56Sopenharmony_cidqrmn423 remaindernear 1E+6144 2E+6143 -> 0E+6111 Clamped 3457db96d56Sopenharmony_cidqrmn424 remaindernear 1E+6144 3E+6143 -> 1.00000000000000000000000000000000E+6143 Clamped 3467db96d56Sopenharmony_cidqrmn425 remaindernear 1E+6144 4E+6143 -> 2.00000000000000000000000000000000E+6143 Clamped 3477db96d56Sopenharmony_cidqrmn426 remaindernear 1E+6144 5E+6143 -> 0E+6111 Clamped 3487db96d56Sopenharmony_cidqrmn427 remaindernear 1E+6144 6E+6143 -> -2.00000000000000000000000000000000E+6143 Clamped 3497db96d56Sopenharmony_cidqrmn428 remaindernear 1E+6144 7E+6143 -> 3.00000000000000000000000000000000E+6143 Clamped 3507db96d56Sopenharmony_cidqrmn429 remaindernear 1E+6144 8E+6143 -> 2.00000000000000000000000000000000E+6143 Clamped 3517db96d56Sopenharmony_cidqrmn430 remaindernear 1E+6144 9E+6143 -> 1.00000000000000000000000000000000E+6143 Clamped 3527db96d56Sopenharmony_ci-- tinies 3537db96d56Sopenharmony_cidqrmn431 remaindernear 1E-6175 1E-6176 -> 0E-6176 3547db96d56Sopenharmony_cidqrmn432 remaindernear 1E-6175 2E-6176 -> 0E-6176 3557db96d56Sopenharmony_cidqrmn433 remaindernear 1E-6175 3E-6176 -> 1E-6176 Subnormal 3567db96d56Sopenharmony_cidqrmn434 remaindernear 1E-6175 4E-6176 -> 2E-6176 Subnormal 3577db96d56Sopenharmony_cidqrmn435 remaindernear 1E-6175 5E-6176 -> 0E-6176 3587db96d56Sopenharmony_cidqrmn436 remaindernear 1E-6175 6E-6176 -> -2E-6176 Subnormal 3597db96d56Sopenharmony_cidqrmn437 remaindernear 1E-6175 7E-6176 -> 3E-6176 Subnormal 3607db96d56Sopenharmony_cidqrmn438 remaindernear 1E-6175 8E-6176 -> 2E-6176 Subnormal 3617db96d56Sopenharmony_cidqrmn439 remaindernear 1E-6175 9E-6176 -> 1E-6176 Subnormal 3627db96d56Sopenharmony_cidqrmn440 remaindernear 1E-6175 10E-6176 -> 0E-6176 3637db96d56Sopenharmony_cidqrmn441 remaindernear 1E-6175 11E-6176 -> -1E-6176 Subnormal 3647db96d56Sopenharmony_cidqrmn442 remaindernear 100E-6175 11E-6176 -> -1E-6176 Subnormal 3657db96d56Sopenharmony_cidqrmn443 remaindernear 100E-6175 20E-6176 -> 0E-6176 3667db96d56Sopenharmony_cidqrmn444 remaindernear 100E-6175 21E-6176 -> -8E-6176 Subnormal 3677db96d56Sopenharmony_cidqrmn445 remaindernear 100E-6175 30E-6176 -> 1.0E-6175 Subnormal 3687db96d56Sopenharmony_ci 3697db96d56Sopenharmony_ci-- zero signs 3707db96d56Sopenharmony_cidqrmn650 remaindernear 1 1 -> 0 3717db96d56Sopenharmony_cidqrmn651 remaindernear -1 1 -> -0 3727db96d56Sopenharmony_cidqrmn652 remaindernear 1 -1 -> 0 3737db96d56Sopenharmony_cidqrmn653 remaindernear -1 -1 -> -0 3747db96d56Sopenharmony_cidqrmn654 remaindernear 0 1 -> 0 3757db96d56Sopenharmony_cidqrmn655 remaindernear -0 1 -> -0 3767db96d56Sopenharmony_cidqrmn656 remaindernear 0 -1 -> 0 3777db96d56Sopenharmony_cidqrmn657 remaindernear -0 -1 -> -0 3787db96d56Sopenharmony_cidqrmn658 remaindernear 0.00 1 -> 0.00 3797db96d56Sopenharmony_cidqrmn659 remaindernear -0.00 1 -> -0.00 3807db96d56Sopenharmony_ci 3817db96d56Sopenharmony_ci-- Specials 3827db96d56Sopenharmony_cidqrmn680 remaindernear Inf -Inf -> NaN Invalid_operation 3837db96d56Sopenharmony_cidqrmn681 remaindernear Inf -1000 -> NaN Invalid_operation 3847db96d56Sopenharmony_cidqrmn682 remaindernear Inf -1 -> NaN Invalid_operation 3857db96d56Sopenharmony_cidqrmn683 remaindernear Inf 0 -> NaN Invalid_operation 3867db96d56Sopenharmony_cidqrmn684 remaindernear Inf -0 -> NaN Invalid_operation 3877db96d56Sopenharmony_cidqrmn685 remaindernear Inf 1 -> NaN Invalid_operation 3887db96d56Sopenharmony_cidqrmn686 remaindernear Inf 1000 -> NaN Invalid_operation 3897db96d56Sopenharmony_cidqrmn687 remaindernear Inf Inf -> NaN Invalid_operation 3907db96d56Sopenharmony_cidqrmn688 remaindernear -1000 Inf -> -1000 3917db96d56Sopenharmony_cidqrmn689 remaindernear -Inf Inf -> NaN Invalid_operation 3927db96d56Sopenharmony_cidqrmn691 remaindernear -1 Inf -> -1 3937db96d56Sopenharmony_cidqrmn692 remaindernear 0 Inf -> 0 3947db96d56Sopenharmony_cidqrmn693 remaindernear -0 Inf -> -0 3957db96d56Sopenharmony_cidqrmn694 remaindernear 1 Inf -> 1 3967db96d56Sopenharmony_cidqrmn695 remaindernear 1000 Inf -> 1000 3977db96d56Sopenharmony_cidqrmn696 remaindernear Inf Inf -> NaN Invalid_operation 3987db96d56Sopenharmony_ci 3997db96d56Sopenharmony_cidqrmn700 remaindernear -Inf -Inf -> NaN Invalid_operation 4007db96d56Sopenharmony_cidqrmn701 remaindernear -Inf -1000 -> NaN Invalid_operation 4017db96d56Sopenharmony_cidqrmn702 remaindernear -Inf -1 -> NaN Invalid_operation 4027db96d56Sopenharmony_cidqrmn703 remaindernear -Inf -0 -> NaN Invalid_operation 4037db96d56Sopenharmony_cidqrmn704 remaindernear -Inf 0 -> NaN Invalid_operation 4047db96d56Sopenharmony_cidqrmn705 remaindernear -Inf 1 -> NaN Invalid_operation 4057db96d56Sopenharmony_cidqrmn706 remaindernear -Inf 1000 -> NaN Invalid_operation 4067db96d56Sopenharmony_cidqrmn707 remaindernear -Inf Inf -> NaN Invalid_operation 4077db96d56Sopenharmony_cidqrmn708 remaindernear -Inf -Inf -> NaN Invalid_operation 4087db96d56Sopenharmony_cidqrmn709 remaindernear -1000 Inf -> -1000 4097db96d56Sopenharmony_cidqrmn710 remaindernear -1 -Inf -> -1 4107db96d56Sopenharmony_cidqrmn711 remaindernear -0 -Inf -> -0 4117db96d56Sopenharmony_cidqrmn712 remaindernear 0 -Inf -> 0 4127db96d56Sopenharmony_cidqrmn713 remaindernear 1 -Inf -> 1 4137db96d56Sopenharmony_cidqrmn714 remaindernear 1000 -Inf -> 1000 4147db96d56Sopenharmony_cidqrmn715 remaindernear Inf -Inf -> NaN Invalid_operation 4157db96d56Sopenharmony_ci 4167db96d56Sopenharmony_cidqrmn721 remaindernear NaN -Inf -> NaN 4177db96d56Sopenharmony_cidqrmn722 remaindernear NaN -1000 -> NaN 4187db96d56Sopenharmony_cidqrmn723 remaindernear NaN -1 -> NaN 4197db96d56Sopenharmony_cidqrmn724 remaindernear NaN -0 -> NaN 4207db96d56Sopenharmony_cidqrmn725 remaindernear -NaN 0 -> -NaN 4217db96d56Sopenharmony_cidqrmn726 remaindernear NaN 1 -> NaN 4227db96d56Sopenharmony_cidqrmn727 remaindernear NaN 1000 -> NaN 4237db96d56Sopenharmony_cidqrmn728 remaindernear NaN Inf -> NaN 4247db96d56Sopenharmony_cidqrmn729 remaindernear NaN -NaN -> NaN 4257db96d56Sopenharmony_cidqrmn730 remaindernear -Inf NaN -> NaN 4267db96d56Sopenharmony_cidqrmn731 remaindernear -1000 NaN -> NaN 4277db96d56Sopenharmony_cidqrmn732 remaindernear -1 NaN -> NaN 4287db96d56Sopenharmony_cidqrmn733 remaindernear -0 -NaN -> -NaN 4297db96d56Sopenharmony_cidqrmn734 remaindernear 0 NaN -> NaN 4307db96d56Sopenharmony_cidqrmn735 remaindernear 1 -NaN -> -NaN 4317db96d56Sopenharmony_cidqrmn736 remaindernear 1000 NaN -> NaN 4327db96d56Sopenharmony_cidqrmn737 remaindernear Inf NaN -> NaN 4337db96d56Sopenharmony_ci 4347db96d56Sopenharmony_cidqrmn741 remaindernear sNaN -Inf -> NaN Invalid_operation 4357db96d56Sopenharmony_cidqrmn742 remaindernear sNaN -1000 -> NaN Invalid_operation 4367db96d56Sopenharmony_cidqrmn743 remaindernear -sNaN -1 -> -NaN Invalid_operation 4377db96d56Sopenharmony_cidqrmn744 remaindernear sNaN -0 -> NaN Invalid_operation 4387db96d56Sopenharmony_cidqrmn745 remaindernear sNaN 0 -> NaN Invalid_operation 4397db96d56Sopenharmony_cidqrmn746 remaindernear sNaN 1 -> NaN Invalid_operation 4407db96d56Sopenharmony_cidqrmn747 remaindernear sNaN 1000 -> NaN Invalid_operation 4417db96d56Sopenharmony_cidqrmn749 remaindernear sNaN NaN -> NaN Invalid_operation 4427db96d56Sopenharmony_cidqrmn750 remaindernear sNaN sNaN -> NaN Invalid_operation 4437db96d56Sopenharmony_cidqrmn751 remaindernear NaN sNaN -> NaN Invalid_operation 4447db96d56Sopenharmony_cidqrmn752 remaindernear -Inf sNaN -> NaN Invalid_operation 4457db96d56Sopenharmony_cidqrmn753 remaindernear -1000 sNaN -> NaN Invalid_operation 4467db96d56Sopenharmony_cidqrmn754 remaindernear -1 sNaN -> NaN Invalid_operation 4477db96d56Sopenharmony_cidqrmn755 remaindernear -0 sNaN -> NaN Invalid_operation 4487db96d56Sopenharmony_cidqrmn756 remaindernear 0 sNaN -> NaN Invalid_operation 4497db96d56Sopenharmony_cidqrmn757 remaindernear 1 sNaN -> NaN Invalid_operation 4507db96d56Sopenharmony_cidqrmn758 remaindernear 1000 sNaN -> NaN Invalid_operation 4517db96d56Sopenharmony_cidqrmn759 remaindernear Inf -sNaN -> -NaN Invalid_operation 4527db96d56Sopenharmony_ci 4537db96d56Sopenharmony_ci-- propaging NaNs 4547db96d56Sopenharmony_cidqrmn760 remaindernear NaN1 NaN7 -> NaN1 4557db96d56Sopenharmony_cidqrmn761 remaindernear sNaN2 NaN8 -> NaN2 Invalid_operation 4567db96d56Sopenharmony_cidqrmn762 remaindernear NaN3 sNaN9 -> NaN9 Invalid_operation 4577db96d56Sopenharmony_cidqrmn763 remaindernear sNaN4 sNaN10 -> NaN4 Invalid_operation 4587db96d56Sopenharmony_cidqrmn764 remaindernear 15 NaN11 -> NaN11 4597db96d56Sopenharmony_cidqrmn765 remaindernear NaN6 NaN12 -> NaN6 4607db96d56Sopenharmony_cidqrmn766 remaindernear Inf NaN13 -> NaN13 4617db96d56Sopenharmony_cidqrmn767 remaindernear NaN14 -Inf -> NaN14 4627db96d56Sopenharmony_cidqrmn768 remaindernear 0 NaN15 -> NaN15 4637db96d56Sopenharmony_cidqrmn769 remaindernear NaN16 -0 -> NaN16 4647db96d56Sopenharmony_ci 4657db96d56Sopenharmony_ci-- edge cases of impossible 4667db96d56Sopenharmony_cidqrmn770 remaindernear 1234500000000000000000067890123456 10 -> -4 4677db96d56Sopenharmony_cidqrmn771 remaindernear 1234500000000000000000067890123456 1 -> 0 4687db96d56Sopenharmony_cidqrmn772 remaindernear 1234500000000000000000067890123456 0.1 -> NaN Division_impossible 4697db96d56Sopenharmony_cidqrmn773 remaindernear 1234500000000000000000067890123456 0.01 -> NaN Division_impossible 4707db96d56Sopenharmony_ci 4717db96d56Sopenharmony_ci-- long operand checks 4727db96d56Sopenharmony_cidqrmn801 remaindernear 12345678000 100 -> 0 4737db96d56Sopenharmony_cidqrmn802 remaindernear 1 12345678000 -> 1 4747db96d56Sopenharmony_cidqrmn803 remaindernear 1234567800 10 -> 0 4757db96d56Sopenharmony_cidqrmn804 remaindernear 1 1234567800 -> 1 4767db96d56Sopenharmony_cidqrmn805 remaindernear 1234567890 10 -> 0 4777db96d56Sopenharmony_cidqrmn806 remaindernear 1 1234567890 -> 1 4787db96d56Sopenharmony_cidqrmn807 remaindernear 1234567891 10 -> 1 4797db96d56Sopenharmony_cidqrmn808 remaindernear 1 1234567891 -> 1 4807db96d56Sopenharmony_cidqrmn809 remaindernear 12345678901 100 -> 1 4817db96d56Sopenharmony_cidqrmn810 remaindernear 1 12345678901 -> 1 4827db96d56Sopenharmony_cidqrmn811 remaindernear 1234567896 10 -> -4 4837db96d56Sopenharmony_cidqrmn812 remaindernear 1 1234567896 -> 1 4847db96d56Sopenharmony_ci 4857db96d56Sopenharmony_cidqrmn821 remaindernear 12345678000 100 -> 0 4867db96d56Sopenharmony_cidqrmn822 remaindernear 1 12345678000 -> 1 4877db96d56Sopenharmony_cidqrmn823 remaindernear 1234567800 10 -> 0 4887db96d56Sopenharmony_cidqrmn824 remaindernear 1 1234567800 -> 1 4897db96d56Sopenharmony_cidqrmn825 remaindernear 1234567890 10 -> 0 4907db96d56Sopenharmony_cidqrmn826 remaindernear 1 1234567890 -> 1 4917db96d56Sopenharmony_cidqrmn827 remaindernear 1234567891 10 -> 1 4927db96d56Sopenharmony_cidqrmn828 remaindernear 1 1234567891 -> 1 4937db96d56Sopenharmony_cidqrmn829 remaindernear 12345678901 100 -> 1 4947db96d56Sopenharmony_cidqrmn830 remaindernear 1 12345678901 -> 1 4957db96d56Sopenharmony_cidqrmn831 remaindernear 1234567896 10 -> -4 4967db96d56Sopenharmony_cidqrmn832 remaindernear 1 1234567896 -> 1 4977db96d56Sopenharmony_ci 4987db96d56Sopenharmony_ci-- from divideint 4997db96d56Sopenharmony_cidqrmn840 remaindernear 100000000.0 1 -> 0.0 5007db96d56Sopenharmony_cidqrmn841 remaindernear 100000000.4 1 -> 0.4 5017db96d56Sopenharmony_cidqrmn842 remaindernear 100000000.5 1 -> 0.5 5027db96d56Sopenharmony_cidqrmn843 remaindernear 100000000.9 1 -> -0.1 5037db96d56Sopenharmony_cidqrmn844 remaindernear 100000000.999 1 -> -0.001 5047db96d56Sopenharmony_cidqrmn850 remaindernear 100000003 5 -> -2 5057db96d56Sopenharmony_cidqrmn851 remaindernear 10000003 5 -> -2 5067db96d56Sopenharmony_cidqrmn852 remaindernear 1000003 5 -> -2 5077db96d56Sopenharmony_cidqrmn853 remaindernear 100003 5 -> -2 5087db96d56Sopenharmony_cidqrmn854 remaindernear 10003 5 -> -2 5097db96d56Sopenharmony_cidqrmn855 remaindernear 1003 5 -> -2 5107db96d56Sopenharmony_cidqrmn856 remaindernear 103 5 -> -2 5117db96d56Sopenharmony_cidqrmn857 remaindernear 13 5 -> -2 5127db96d56Sopenharmony_cidqrmn858 remaindernear 1 5 -> 1 5137db96d56Sopenharmony_ci 5147db96d56Sopenharmony_ci-- Vladimir's cases 1234567890123456 5157db96d56Sopenharmony_cidqrmn860 remaindernear 123.0e1 1000000000000000 -> 1230 5167db96d56Sopenharmony_cidqrmn861 remaindernear 1230 1000000000000000 -> 1230 5177db96d56Sopenharmony_cidqrmn862 remaindernear 12.3e2 1000000000000000 -> 1230 5187db96d56Sopenharmony_cidqrmn863 remaindernear 1.23e3 1000000000000000 -> 1230 5197db96d56Sopenharmony_cidqrmn864 remaindernear 123e1 1000000000000000 -> 1230 5207db96d56Sopenharmony_cidqrmn870 remaindernear 123e1 1000000000000000 -> 1230 5217db96d56Sopenharmony_cidqrmn871 remaindernear 123e1 100000000000000 -> 1230 5227db96d56Sopenharmony_cidqrmn872 remaindernear 123e1 10000000000000 -> 1230 5237db96d56Sopenharmony_cidqrmn873 remaindernear 123e1 1000000000000 -> 1230 5247db96d56Sopenharmony_cidqrmn874 remaindernear 123e1 100000000000 -> 1230 5257db96d56Sopenharmony_cidqrmn875 remaindernear 123e1 10000000000 -> 1230 5267db96d56Sopenharmony_cidqrmn876 remaindernear 123e1 1000000000 -> 1230 5277db96d56Sopenharmony_cidqrmn877 remaindernear 123e1 100000000 -> 1230 5287db96d56Sopenharmony_cidqrmn878 remaindernear 1230 100000000 -> 1230 5297db96d56Sopenharmony_cidqrmn879 remaindernear 123e1 10000000 -> 1230 5307db96d56Sopenharmony_cidqrmn880 remaindernear 123e1 1000000 -> 1230 5317db96d56Sopenharmony_cidqrmn881 remaindernear 123e1 100000 -> 1230 5327db96d56Sopenharmony_cidqrmn882 remaindernear 123e1 10000 -> 1230 5337db96d56Sopenharmony_cidqrmn883 remaindernear 123e1 1000 -> 230 5347db96d56Sopenharmony_cidqrmn884 remaindernear 123e1 100 -> 30 5357db96d56Sopenharmony_cidqrmn885 remaindernear 123e1 10 -> 0 5367db96d56Sopenharmony_cidqrmn886 remaindernear 123e1 1 -> 0 5377db96d56Sopenharmony_ci 5387db96d56Sopenharmony_cidqrmn890 remaindernear 123e1 2000000000000000 -> 1230 5397db96d56Sopenharmony_cidqrmn891 remaindernear 123e1 200000000000000 -> 1230 5407db96d56Sopenharmony_cidqrmn892 remaindernear 123e1 20000000000000 -> 1230 5417db96d56Sopenharmony_cidqrmn893 remaindernear 123e1 2000000000000 -> 1230 5427db96d56Sopenharmony_cidqrmn894 remaindernear 123e1 200000000000 -> 1230 5437db96d56Sopenharmony_cidqrmn895 remaindernear 123e1 20000000000 -> 1230 5447db96d56Sopenharmony_cidqrmn896 remaindernear 123e1 2000000000 -> 1230 5457db96d56Sopenharmony_cidqrmn897 remaindernear 123e1 200000000 -> 1230 5467db96d56Sopenharmony_cidqrmn899 remaindernear 123e1 20000000 -> 1230 5477db96d56Sopenharmony_cidqrmn900 remaindernear 123e1 2000000 -> 1230 5487db96d56Sopenharmony_cidqrmn901 remaindernear 123e1 200000 -> 1230 5497db96d56Sopenharmony_cidqrmn902 remaindernear 123e1 20000 -> 1230 5507db96d56Sopenharmony_cidqrmn903 remaindernear 123e1 2000 -> -770 5517db96d56Sopenharmony_cidqrmn904 remaindernear 123e1 200 -> 30 5527db96d56Sopenharmony_cidqrmn905 remaindernear 123e1 20 -> -10 5537db96d56Sopenharmony_cidqrmn906 remaindernear 123e1 2 -> 0 5547db96d56Sopenharmony_ci 5557db96d56Sopenharmony_cidqrmn910 remaindernear 123e1 5000000000000000 -> 1230 5567db96d56Sopenharmony_cidqrmn911 remaindernear 123e1 500000000000000 -> 1230 5577db96d56Sopenharmony_cidqrmn912 remaindernear 123e1 50000000000000 -> 1230 5587db96d56Sopenharmony_cidqrmn913 remaindernear 123e1 5000000000000 -> 1230 5597db96d56Sopenharmony_cidqrmn914 remaindernear 123e1 500000000000 -> 1230 5607db96d56Sopenharmony_cidqrmn915 remaindernear 123e1 50000000000 -> 1230 5617db96d56Sopenharmony_cidqrmn916 remaindernear 123e1 5000000000 -> 1230 5627db96d56Sopenharmony_cidqrmn917 remaindernear 123e1 500000000 -> 1230 5637db96d56Sopenharmony_cidqrmn919 remaindernear 123e1 50000000 -> 1230 5647db96d56Sopenharmony_cidqrmn920 remaindernear 123e1 5000000 -> 1230 5657db96d56Sopenharmony_cidqrmn921 remaindernear 123e1 500000 -> 1230 5667db96d56Sopenharmony_cidqrmn922 remaindernear 123e1 50000 -> 1230 5677db96d56Sopenharmony_cidqrmn923 remaindernear 123e1 5000 -> 1230 5687db96d56Sopenharmony_cidqrmn924 remaindernear 123e1 500 -> 230 5697db96d56Sopenharmony_cidqrmn925 remaindernear 123e1 50 -> -20 5707db96d56Sopenharmony_cidqrmn926 remaindernear 123e1 5 -> 0 5717db96d56Sopenharmony_ci 5727db96d56Sopenharmony_cidqrmn930 remaindernear 123e1 9000000000000000 -> 1230 5737db96d56Sopenharmony_cidqrmn931 remaindernear 123e1 900000000000000 -> 1230 5747db96d56Sopenharmony_cidqrmn932 remaindernear 123e1 90000000000000 -> 1230 5757db96d56Sopenharmony_cidqrmn933 remaindernear 123e1 9000000000000 -> 1230 5767db96d56Sopenharmony_cidqrmn934 remaindernear 123e1 900000000000 -> 1230 5777db96d56Sopenharmony_cidqrmn935 remaindernear 123e1 90000000000 -> 1230 5787db96d56Sopenharmony_cidqrmn936 remaindernear 123e1 9000000000 -> 1230 5797db96d56Sopenharmony_cidqrmn937 remaindernear 123e1 900000000 -> 1230 5807db96d56Sopenharmony_cidqrmn939 remaindernear 123e1 90000000 -> 1230 5817db96d56Sopenharmony_cidqrmn940 remaindernear 123e1 9000000 -> 1230 5827db96d56Sopenharmony_cidqrmn941 remaindernear 123e1 900000 -> 1230 5837db96d56Sopenharmony_cidqrmn942 remaindernear 123e1 90000 -> 1230 5847db96d56Sopenharmony_cidqrmn943 remaindernear 123e1 9000 -> 1230 5857db96d56Sopenharmony_cidqrmn944 remaindernear 123e1 900 -> 330 5867db96d56Sopenharmony_cidqrmn945 remaindernear 123e1 90 -> -30 5877db96d56Sopenharmony_cidqrmn946 remaindernear 123e1 9 -> -3 5887db96d56Sopenharmony_ci 5897db96d56Sopenharmony_cidqrmn950 remaindernear 123e1 1000000000000000 -> 1230 5907db96d56Sopenharmony_cidqrmn961 remaindernear 123e1 2999999999999999 -> 1230 5917db96d56Sopenharmony_cidqrmn962 remaindernear 123e1 3999999999999999 -> 1230 5927db96d56Sopenharmony_cidqrmn963 remaindernear 123e1 4999999999999999 -> 1230 5937db96d56Sopenharmony_cidqrmn964 remaindernear 123e1 5999999999999999 -> 1230 5947db96d56Sopenharmony_cidqrmn965 remaindernear 123e1 6999999999999999 -> 1230 5957db96d56Sopenharmony_cidqrmn966 remaindernear 123e1 7999999999999999 -> 1230 5967db96d56Sopenharmony_cidqrmn967 remaindernear 123e1 8999999999999999 -> 1230 5977db96d56Sopenharmony_cidqrmn968 remaindernear 123e1 9999999999999999 -> 1230 5987db96d56Sopenharmony_cidqrmn969 remaindernear 123e1 9876543210987654 -> 1230 5997db96d56Sopenharmony_ci 6007db96d56Sopenharmony_cidqrmn980 remaindernear 123e1 1000E299 -> 1.23E+3 -- 123E+1 internally 6017db96d56Sopenharmony_ci 6027db96d56Sopenharmony_ci-- overflow and underflow tests [from divide] 6037db96d56Sopenharmony_cidqrmn1051 remaindernear 1e+277 1e-311 -> NaN Division_impossible 6047db96d56Sopenharmony_cidqrmn1052 remaindernear 1e+277 -1e-311 -> NaN Division_impossible 6057db96d56Sopenharmony_cidqrmn1053 remaindernear -1e+277 1e-311 -> NaN Division_impossible 6067db96d56Sopenharmony_cidqrmn1054 remaindernear -1e+277 -1e-311 -> NaN Division_impossible 6077db96d56Sopenharmony_cidqrmn1055 remaindernear 1e-277 1e+311 -> 1E-277 6087db96d56Sopenharmony_cidqrmn1056 remaindernear 1e-277 -1e+311 -> 1E-277 6097db96d56Sopenharmony_cidqrmn1057 remaindernear -1e-277 1e+311 -> -1E-277 6107db96d56Sopenharmony_cidqrmn1058 remaindernear -1e-277 -1e+311 -> -1E-277 6117db96d56Sopenharmony_ci 6127db96d56Sopenharmony_ci-- Gyuris example 6137db96d56Sopenharmony_cidqrmn1070 remainder 8.336804418094040989630006819881709E-6143 8.336804418094040989630006819889000E-6143 -> 8.336804418094040989630006819881709E-6143 6147db96d56Sopenharmony_ci 6157db96d56Sopenharmony_ci-- destructive subtract 6167db96d56Sopenharmony_cidqrmn1101 remaindernear 1234567890123456789012345678901234 1.000000000000000000000000000000001 -> -0.234567890123456789012345678901233 6177db96d56Sopenharmony_cidqrmn1102 remaindernear 1234567890123456789012345678901234 1.00000000000000000000000000000001 -> -0.34567890123456789012345678901222 6187db96d56Sopenharmony_cidqrmn1103 remaindernear 1234567890123456789012345678901234 1.0000000000000000000000000000001 -> -0.4567890123456789012345678901111 6197db96d56Sopenharmony_cidqrmn1104 remaindernear 1234567890123456789012345678901255 4.000000000000000000000000000000001 -> -1.308641972530864197253086419725314 6207db96d56Sopenharmony_cidqrmn1105 remaindernear 1234567890123456789012345678901234 4.000000000000000000000000000000001 -> 1.691358027469135802746913580274692 6217db96d56Sopenharmony_cidqrmn1106 remaindernear 1234567890123456789012345678901234 4.9999999999999999999999999999999 -> -1.3086421975308642197530864219748 6227db96d56Sopenharmony_cidqrmn1107 remaindernear 1234567890123456789012345678901234 4.99999999999999999999999999999999 -> 1.46913578024691357802469135780247 6237db96d56Sopenharmony_cidqrmn1108 remaindernear 1234567890123456789012345678901234 4.999999999999999999999999999999999 -> -0.753086421975308642197530864219753 6247db96d56Sopenharmony_cidqrmn1109 remaindernear 1234567890123456789012345678901234 5.000000000000000000000000000000001 -> -1.246913578024691357802469135780247 6257db96d56Sopenharmony_cidqrmn1110 remaindernear 1234567890123456789012345678901234 5.00000000000000000000000000000001 -> 1.53086421975308642197530864219754 6267db96d56Sopenharmony_cidqrmn1111 remaindernear 1234567890123456789012345678901234 5.0000000000000000000000000000001 -> -0.6913578024691357802469135780242 6277db96d56Sopenharmony_ci 6287db96d56Sopenharmony_ci-- Null tests 6297db96d56Sopenharmony_cidqrmn1000 remaindernear 10 # -> NaN Invalid_operation 6307db96d56Sopenharmony_cidqrmn1001 remaindernear # 10 -> NaN Invalid_operation 6317db96d56Sopenharmony_ci 632