------------------------------------------------------------------------ -- base0.decTest -- base decimal <--> string conversions (simplified) -- -- Copyright (c) IBM Corporation, 1981, 2008. All rights reserved. -- ------------------------------------------------------------------------ -- Please see the document "General Decimal Arithmetic Testcases" -- -- at http://www2.hursley.ibm.com/decimal for the description of -- -- these testcases. -- -- -- -- These testcases are experimental ('beta' versions), and they -- -- may contain errors. They are offered on an as-is basis. In -- -- particular, achieving the same results as the tests here is not -- -- a guarantee that an implementation complies with any Standard -- -- or specification. The tests are not exhaustive. -- -- -- -- Please send comments, suggestions, and corrections to the author: -- -- Mike Cowlishaw, IBM Fellow -- -- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK -- -- mfc@uk.ibm.com -- ------------------------------------------------------------------------ version: 2.58 -- This file tests base conversions from string to a decimal number -- and back to a string (in either Scientific or Engineering form), -- using the simplified arithmetic rules extended: 0 precision: 15 rounding: half_up maxExponent: 999999999 minexponent: -999999999 bas001 toSci 0 -> 0 bas002 toSci 1 -> 1 bas003 toSci 1.0 -> 1.0 bas004 toSci 1.00 -> 1.00 bas005 toSci 10 -> 10 bas006 toSci 1000 -> 1000 bas007 toSci 10.0 -> 10.0 bas008 toSci 10.1 -> 10.1 bas009 toSci 10.4 -> 10.4 bas010 toSci 10.5 -> 10.5 bas011 toSci 10.6 -> 10.6 bas012 toSci 10.9 -> 10.9 bas013 toSci 11.0 -> 11.0 bas014 toSci 1.234 -> 1.234 bas015 toSci 0.123 -> 0.123 bas016 toSci 0.012 -> 0.012 bas021 toSci -1 -> -1 bas022 toSci -1.0 -> -1.0 bas023 toSci -0.1 -> -0.1 bas024 toSci -9.1 -> -9.1 bas025 toSci -9.11 -> -9.11 bas026 toSci -9.119 -> -9.119 bas027 toSci -9.999 -> -9.999 bas030 toSci '123456789.123456' -> '123456789.123456' bas031 toSci '123456789.000000' -> '123456789.000000' bas032 toSci '123456789123456' -> '123456789123456' bas033 toSci '0.0000123456789' -> '0.0000123456789' bas034 toSci '0.00000123456789' -> '0.00000123456789' bas035 toSci '0.000000123456789' -> '1.23456789E-7' bas036 toSci '0.0000000123456789' -> '1.23456789E-8' bas037 toSci '0.123456789012344' -> '0.123456789012344' bas038 toSci '0.123456789012345' -> '0.123456789012345' -- String [many more examples are implicitly tested elsewhere] -- strings without E cannot generate E in result bas101 toSci "12" -> '12' bas102 toSci "-76" -> '-76' bas103 toSci "12.76" -> '12.76' bas104 toSci "+12.76" -> '12.76' bas105 toSci "012.76" -> '12.76' bas106 toSci "+0.003" -> '0.003' bas107 toSci "17." -> '17' bas108 toSci ".5" -> '0.5' bas109 toSci "044" -> '44' bas110 toSci "0044" -> '44' bas111 toSci "0.0005" -> '0.0005' bas112 toSci "00.00005" -> '0.00005' bas113 toSci "0.000005" -> '0.000005' bas114 toSci "0.0000005" -> '5E-7' bas115 toSci "0.00000005" -> '5E-8' bas116 toSci "12345678.543210" -> '12345678.543210' bas117 toSci "2345678.543210" -> '2345678.543210' bas118 toSci "345678.543210" -> '345678.543210' bas119 toSci "0345678.54321" -> '345678.54321' bas120 toSci "345678.5432" -> '345678.5432' bas121 toSci "+345678.5432" -> '345678.5432' bas122 toSci "+0345678.5432" -> '345678.5432' bas123 toSci "+00345678.5432" -> '345678.5432' bas124 toSci "-345678.5432" -> '-345678.5432' bas125 toSci "-0345678.5432" -> '-345678.5432' bas126 toSci "-00345678.5432" -> '-345678.5432' -- [No exotics as no Unicode] -- Numbers with E bas130 toSci "0.000E-1" -> '0' bas131 toSci "0.000E-2" -> '0' bas132 toSci "0.000E-3" -> '0' bas133 toSci "0.000E-4" -> '0' bas134 toSci "0.00E-2" -> '0' bas135 toSci "0.00E-3" -> '0' bas136 toSci "0.00E-4" -> '0' bas137 toSci "0.00E-5" -> '0' bas138 toSci "+0E+9" -> '0' bas139 toSci "-0E+9" -> '0' bas140 toSci "1E+9" -> '1E+9' bas141 toSci "1e+09" -> '1E+9' bas142 toSci "1E+90" -> '1E+90' bas143 toSci "+1E+009" -> '1E+9' bas144 toSci "0E+9" -> '0' bas145 toSci "1E+9" -> '1E+9' bas146 toSci "1E+09" -> '1E+9' bas147 toSci "1e+90" -> '1E+90' bas148 toSci "1E+009" -> '1E+9' bas149 toSci "000E+9" -> '0' bas150 toSci "1E9" -> '1E+9' bas151 toSci "1e09" -> '1E+9' bas152 toSci "1E90" -> '1E+90' bas153 toSci "1E009" -> '1E+9' bas154 toSci "0E9" -> '0' bas155 toSci "0.000e+0" -> '0' bas156 toSci "0.000E-1" -> '0' bas157 toSci "4E+9" -> '4E+9' bas158 toSci "44E+9" -> '4.4E+10' bas159 toSci "0.73e-7" -> '7.3E-8' bas160 toSci "00E+9" -> '0' bas161 toSci "00E-9" -> '0' bas162 toSci "10E+9" -> '1.0E+10' bas163 toSci "10E+09" -> '1.0E+10' bas164 toSci "10e+90" -> '1.0E+91' bas165 toSci "10E+009" -> '1.0E+10' bas166 toSci "100e+9" -> '1.00E+11' bas167 toSci "100e+09" -> '1.00E+11' bas168 toSci "100E+90" -> '1.00E+92' bas169 toSci "100e+009" -> '1.00E+11' bas170 toSci "1.265" -> '1.265' bas171 toSci "1.265E-20" -> '1.265E-20' bas172 toSci "1.265E-8" -> '1.265E-8' bas173 toSci "1.265E-4" -> '0.0001265' bas174 toSci "1.265E-3" -> '0.001265' bas175 toSci "1.265E-2" -> '0.01265' bas176 toSci "1.265E-1" -> '0.1265' bas177 toSci "1.265E-0" -> '1.265' bas178 toSci "1.265E+1" -> '12.65' bas179 toSci "1.265E+2" -> '126.5' bas180 toSci "1.265E+3" -> '1265' bas181 toSci "1.265E+4" -> '1.265E+4' bas182 toSci "1.265E+8" -> '1.265E+8' bas183 toSci "1.265E+20" -> '1.265E+20' bas190 toSci "12.65" -> '12.65' bas191 toSci "12.65E-20" -> '1.265E-19' bas192 toSci "12.65E-8" -> '1.265E-7' bas193 toSci "12.65E-4" -> '0.001265' bas194 toSci "12.65E-3" -> '0.01265' bas195 toSci "12.65E-2" -> '0.1265' bas196 toSci "12.65E-1" -> '1.265' bas197 toSci "12.65E-0" -> '12.65' bas198 toSci "12.65E+1" -> '126.5' bas199 toSci "12.65E+2" -> '1265' bas200 toSci "12.65E+3" -> '1.265E+4' bas201 toSci "12.65E+4" -> '1.265E+5' bas202 toSci "12.65E+8" -> '1.265E+9' bas203 toSci "12.65E+20" -> '1.265E+21' bas210 toSci "126.5" -> '126.5' bas211 toSci "126.5E-20" -> '1.265E-18' bas212 toSci "126.5E-8" -> '0.000001265' bas213 toSci "126.5E-4" -> '0.01265' bas214 toSci "126.5E-3" -> '0.1265' bas215 toSci "126.5E-2" -> '1.265' bas216 toSci "126.5E-1" -> '12.65' bas217 toSci "126.5E-0" -> '126.5' bas218 toSci "126.5E+1" -> '1265' bas219 toSci "126.5E+2" -> '1.265E+4' bas220 toSci "126.5E+3" -> '1.265E+5' bas221 toSci "126.5E+4" -> '1.265E+6' bas222 toSci "126.5E+8" -> '1.265E+10' bas223 toSci "126.5E+20" -> '1.265E+22' bas230 toSci "1265" -> '1265' bas231 toSci "1265E-20" -> '1.265E-17' bas232 toSci "1265E-8" -> '0.00001265' bas233 toSci "1265E-4" -> '0.1265' bas234 toSci "1265E-3" -> '1.265' bas235 toSci "1265E-2" -> '12.65' bas236 toSci "1265E-1" -> '126.5' bas237 toSci "1265E-0" -> '1265' bas238 toSci "1265E+1" -> '1.265E+4' bas239 toSci "1265E+2" -> '1.265E+5' bas240 toSci "1265E+3" -> '1.265E+6' bas241 toSci "1265E+4" -> '1.265E+7' bas242 toSci "1265E+8" -> '1.265E+11' bas243 toSci "1265E+20" -> '1.265E+23' bas250 toSci "0.1265" -> '0.1265' bas251 toSci "0.1265E-20" -> '1.265E-21' bas252 toSci "0.1265E-8" -> '1.265E-9' bas253 toSci "0.1265E-4" -> '0.00001265' bas254 toSci "0.1265E-3" -> '0.0001265' bas255 toSci "0.1265E-2" -> '0.001265' bas256 toSci "0.1265E-1" -> '0.01265' bas257 toSci "0.1265E-0" -> '0.1265' bas258 toSci "0.1265E+1" -> '1.265' bas259 toSci "0.1265E+2" -> '12.65' bas260 toSci "0.1265E+3" -> '126.5' bas261 toSci "0.1265E+4" -> '1265' bas262 toSci "0.1265E+8" -> '1.265E+7' bas263 toSci "0.1265E+20" -> '1.265E+19' bas270 toSci "0.09e999" -> '9E+997' bas271 toSci "0.9e999" -> '9E+998' bas272 toSci "9e999" -> '9E+999' bas273 toSci "9.9e999" -> '9.9E+999' bas274 toSci "9.99e999" -> '9.99E+999' bas275 toSci "9.99e-999" -> '9.99E-999' bas276 toSci "9.9e-999" -> '9.9E-999' bas277 toSci "9e-999" -> '9E-999' bas279 toSci "99e-999" -> '9.9E-998' bas280 toSci "999e-999" -> '9.99E-997' bas281 toSci '0.9e-998' -> '9E-999' bas282 toSci '0.09e-997' -> '9E-999' bas283 toSci '0.1e1000' -> '1E+999' bas284 toSci '10e-1000' -> '1.0E-999' -- Engineering notation tests bas301 toSci 10e12 -> 1.0E+13 bas302 toEng 10e12 -> 10E+12 bas303 toSci 10e11 -> 1.0E+12 bas304 toEng 10e11 -> 1.0E+12 bas305 toSci 10e10 -> 1.0E+11 bas306 toEng 10e10 -> 100E+9 bas307 toSci 10e9 -> 1.0E+10 bas308 toEng 10e9 -> 10E+9 bas309 toSci 10e8 -> 1.0E+9 bas310 toEng 10e8 -> 1.0E+9 bas311 toSci 10e7 -> 1.0E+8 bas312 toEng 10e7 -> 100E+6 bas313 toSci 10e6 -> 1.0E+7 bas314 toEng 10e6 -> 10E+6 bas315 toSci 10e5 -> 1.0E+6 bas316 toEng 10e5 -> 1.0E+6 bas317 toSci 10e4 -> 1.0E+5 bas318 toEng 10e4 -> 100E+3 bas319 toSci 10e3 -> 1.0E+4 bas320 toEng 10e3 -> 10E+3 bas321 toSci 10e2 -> 1.0E+3 bas322 toEng 10e2 -> 1.0E+3 bas323 toSci 10e1 -> 1.0E+2 bas324 toEng 10e1 -> 100 bas325 toSci 10e0 -> 10 bas326 toEng 10e0 -> 10 bas327 toSci 10e-1 -> 1.0 bas328 toEng 10e-1 -> 1.0 bas329 toSci 10e-2 -> 0.10 bas330 toEng 10e-2 -> 0.10 bas331 toSci 10e-3 -> 0.010 bas332 toEng 10e-3 -> 0.010 bas333 toSci 10e-4 -> 0.0010 bas334 toEng 10e-4 -> 0.0010 bas335 toSci 10e-5 -> 0.00010 bas336 toEng 10e-5 -> 0.00010 bas337 toSci 10e-6 -> 0.000010 bas338 toEng 10e-6 -> 0.000010 bas339 toSci 10e-7 -> 0.0000010 bas340 toEng 10e-7 -> 0.0000010 bas341 toSci 10e-8 -> 1.0E-7 bas342 toEng 10e-8 -> 100E-9 bas343 toSci 10e-9 -> 1.0E-8 bas344 toEng 10e-9 -> 10E-9 bas345 toSci 10e-10 -> 1.0E-9 bas346 toEng 10e-10 -> 1.0E-9 bas347 toSci 10e-11 -> 1.0E-10 bas348 toEng 10e-11 -> 100E-12 bas349 toSci 10e-12 -> 1.0E-11 bas350 toEng 10e-12 -> 10E-12 bas351 toSci 10e-13 -> 1.0E-12 bas352 toEng 10e-13 -> 1.0E-12 bas361 toSci 7E12 -> 7E+12 bas362 toEng 7E12 -> 7E+12 bas363 toSci 7E11 -> 7E+11 bas364 toEng 7E11 -> 700E+9 bas365 toSci 7E10 -> 7E+10 bas366 toEng 7E10 -> 70E+9 bas367 toSci 7E9 -> 7E+9 bas368 toEng 7E9 -> 7E+9 bas369 toSci 7E8 -> 7E+8 bas370 toEng 7E8 -> 700E+6 bas371 toSci 7E7 -> 7E+7 bas372 toEng 7E7 -> 70E+6 bas373 toSci 7E6 -> 7E+6 bas374 toEng 7E6 -> 7E+6 bas375 toSci 7E5 -> 7E+5 bas376 toEng 7E5 -> 700E+3 bas377 toSci 7E4 -> 7E+4 bas378 toEng 7E4 -> 70E+3 bas379 toSci 7E3 -> 7E+3 bas380 toEng 7E3 -> 7E+3 bas381 toSci 7E2 -> 7E+2 bas382 toEng 7E2 -> 700 bas383 toSci 7E1 -> 7E+1 bas384 toEng 7E1 -> 70 bas385 toSci 7E0 -> 7 bas386 toEng 7E0 -> 7 bas387 toSci 7E-1 -> 0.7 bas388 toEng 7E-1 -> 0.7 bas389 toSci 7E-2 -> 0.07 bas390 toEng 7E-2 -> 0.07 bas391 toSci 7E-3 -> 0.007 bas392 toEng 7E-3 -> 0.007 bas393 toSci 7E-4 -> 0.0007 bas394 toEng 7E-4 -> 0.0007 bas395 toSci 7E-5 -> 0.00007 bas396 toEng 7E-5 -> 0.00007 bas397 toSci 7E-6 -> 0.000007 bas398 toEng 7E-6 -> 0.000007 bas399 toSci 7E-7 -> 7E-7 bas400 toEng 7E-7 -> 700E-9 bas401 toSci 7E-8 -> 7E-8 bas402 toEng 7E-8 -> 70E-9 bas403 toSci 7E-9 -> 7E-9 bas404 toEng 7E-9 -> 7E-9 bas405 toSci 7E-10 -> 7E-10 bas406 toEng 7E-10 -> 700E-12 bas407 toSci 7E-11 -> 7E-11 bas408 toEng 7E-11 -> 70E-12 bas409 toSci 7E-12 -> 7E-12 bas410 toEng 7E-12 -> 7E-12 bas411 toSci 7E-13 -> 7E-13 bas412 toEng 7E-13 -> 700E-15 -- Exacts remain exact within precision .. precision: 9 bas420 toSci 100 -> 100 bas421 toEng 100 -> 100 bas422 toSci 1000 -> 1000 bas423 toEng 1000 -> 1000 bas424 toSci 999.9 -> 999.9 bas425 toEng 999.9 -> 999.9 bas426 toSci 1000.0 -> 1000.0 bas427 toEng 1000.0 -> 1000.0 bas428 toSci 1000.1 -> 1000.1 bas429 toEng 1000.1 -> 1000.1 bas430 toSci 10000 -> 10000 bas431 toEng 10000 -> 10000 bas432 toSci 100000 -> 100000 bas433 toEng 100000 -> 100000 bas434 toSci 1000000 -> 1000000 bas435 toEng 1000000 -> 1000000 bas436 toSci 10000000 -> 10000000 bas437 toEng 10000000 -> 10000000 bas438 toSci 100000000 -> 100000000 bas439 toEng 100000000 -> 100000000 bas440 toSci 1000000000 -> 1.00000000E+9 Rounded bas441 toEng 1000000000 -> 1.00000000E+9 Rounded bas442 toSci 10000000000 -> 1.00000000E+10 Rounded bas443 toEng 10000000000 -> 10.0000000E+9 Rounded bas444 toSci 100000000000 -> 1.00000000E+11 Rounded bas445 toEng 100000000000 -> 100.000000E+9 Rounded bas446 toSci 100000000300 -> 1.00000000E+11 Rounded Inexact bas447 toEng 100000000499 -> 100.000000E+9 Rounded Inexact bas448 toSci 100000000500 -> 1.00000001E+11 Rounded Inexact bas449 toEng 100000000900 -> 100.000001E+9 Rounded Inexact -- The 'baddies' tests from DiagBigDecimal, plus some new ones bas500 toSci '1..2' -> ? Conversion_syntax bas501 toSci '.' -> ? Conversion_syntax bas502 toSci '..' -> ? Conversion_syntax bas503 toSci '++1' -> ? Conversion_syntax bas504 toSci '--1' -> ? Conversion_syntax bas505 toSci '-+1' -> ? Conversion_syntax bas506 toSci '+-1' -> ? Conversion_syntax bas507 toSci '12e' -> ? Conversion_syntax bas508 toSci '12e++' -> ? Conversion_syntax bas509 toSci '12f4' -> ? Conversion_syntax bas510 toSci ' +1' -> ? Conversion_syntax bas511 toSci '+ 1' -> ? Conversion_syntax bas512 toSci '12 ' -> ? Conversion_syntax bas513 toSci ' + 1' -> ? Conversion_syntax bas514 toSci ' - 1 ' -> ? Conversion_syntax bas515 toSci 'x' -> ? Conversion_syntax bas516 toSci '-1-' -> ? Conversion_syntax bas517 toSci '12-' -> ? Conversion_syntax bas518 toSci '3+' -> ? Conversion_syntax bas519 toSci '' -> ? Conversion_syntax bas520 toSci '1e-' -> ? Conversion_syntax bas521 toSci '7e99999a' -> ? Conversion_syntax bas522 toSci '7e123567890x' -> ? Conversion_syntax bas523 toSci '7e12356789012x' -> ? Conversion_syntax bas524 toSci '' -> ? Conversion_syntax bas525 toSci 'e100' -> ? Conversion_syntax bas526 toSci '\u0e5a' -> ? Conversion_syntax bas527 toSci '\u0b65' -> ? Conversion_syntax bas528 toSci '123,65' -> ? Conversion_syntax bas529 toSci '1.34.5' -> ? Conversion_syntax bas530 toSci '.123.5' -> ? Conversion_syntax bas531 toSci '01.35.' -> ? Conversion_syntax bas532 toSci '01.35-' -> ? Conversion_syntax bas533 toSci '0000..' -> ? Conversion_syntax bas534 toSci '.0000.' -> ? Conversion_syntax bas535 toSci '00..00' -> ? Conversion_syntax bas536 toSci '111e*123' -> ? Conversion_syntax bas537 toSci '111e123-' -> ? Conversion_syntax bas538 toSci '111e+12+' -> ? Conversion_syntax bas539 toSci '111e1-3-' -> ? Conversion_syntax bas540 toSci '111e1*23' -> ? Conversion_syntax bas541 toSci '111e1e+3' -> ? Conversion_syntax bas542 toSci '1e1.0' -> ? Conversion_syntax bas543 toSci '1e123e' -> ? Conversion_syntax bas544 toSci 'ten' -> ? Conversion_syntax bas545 toSci 'ONE' -> ? Conversion_syntax bas546 toSci '1e.1' -> ? Conversion_syntax bas547 toSci '1e1.' -> ? Conversion_syntax bas548 toSci '1ee' -> ? Conversion_syntax bas549 toSci 'e+1' -> ? Conversion_syntax bas550 toSci '1.23.4' -> ? Conversion_syntax bas551 toSci '1.2.1' -> ? Conversion_syntax bas552 toSci '1E+1.2' -> ? Conversion_syntax bas553 toSci '1E+1.2.3' -> ? Conversion_syntax bas554 toSci '1E++1' -> ? Conversion_syntax bas555 toSci '1E--1' -> ? Conversion_syntax bas556 toSci '1E+-1' -> ? Conversion_syntax bas557 toSci '1E-+1' -> ? Conversion_syntax bas558 toSci '1E''1' -> ? Conversion_syntax bas559 toSci "1E""1" -> ? Conversion_syntax bas560 toSci "1E""""" -> ? Conversion_syntax -- Near-specials bas561 toSci "qNaN" -> ? Conversion_syntax bas562 toSci "NaNq" -> ? Conversion_syntax bas563 toSci "NaNs" -> ? Conversion_syntax bas564 toSci "Infi" -> ? Conversion_syntax bas565 toSci "Infin" -> ? Conversion_syntax bas566 toSci "Infini" -> ? Conversion_syntax bas567 toSci "Infinit" -> ? Conversion_syntax -- Xflows for all precisions bas570 toSci '99e999999999' -> ? Overflow Inexact Rounded bas571 toSci '999e999999999' -> ? Overflow Inexact Rounded bas572 toSci '0.9e-999999999' -> ? Underflow Subnormal Inexact Rounded bas573 toSci '0.09e-999999999' -> ? Underflow Subnormal Inexact Rounded bas574 toSci '0.1e1000000000' -> 1E+999999999 bas575 toSci '10e-1000000000' -> 1.0E-999999999 bas576 toSci '0.9e9999999999' -> ? Overflow Inexact Rounded bas577 toSci '99e-9999999999' -> ? Underflow Subnormal Inexact Rounded bas578 toSci '111e9999999999' -> ? Overflow Inexact Rounded bas579 toSci '1111e-9999999999' -> ? Underflow Subnormal Inexact Rounded bas580 toSci '1111e-99999999999' -> ? Underflow Subnormal Inexact Rounded bas581 toSci '7e1000000000' -> ? Overflow Inexact Rounded -- negatives the same bas582 toSci '-99e999999999' -> ? Overflow Inexact Rounded bas583 toSci '-999e999999999' -> ? Overflow Inexact Rounded bas584 toSci '-0.9e-999999999' -> ? Underflow Subnormal Inexact Rounded bas585 toSci '-0.09e-999999999' -> ? Underflow Subnormal Inexact Rounded bas586 toSci '-0.1e1000000000' -> -1E+999999999 bas587 toSci '-10e-1000000000' -> -1.0E-999999999 bas588 toSci '-0.9e9999999999' -> ? Overflow Inexact Rounded bas589 toSci '-99e-9999999999' -> ? Underflow Subnormal Inexact Rounded bas590 toSci '-111e9999999999' -> ? Overflow Inexact Rounded bas591 toSci '-1111e-9999999999' -> ? Underflow Subnormal Inexact Rounded bas592 toSci '-1111e-99999999999' -> ? Underflow Subnormal Inexact Rounded bas593 toSci '-7e1000000000' -> ? Overflow Inexact Rounded -- Specials not allowed unless extended: 1 bas700 toSci "Infinity" -> ? Conversion_syntax bas701 toSci "sNaN" -> ? Conversion_syntax bas702 toSci "NaN" -> ? Conversion_syntax bas703 toSci "-Infinity" -> ? Conversion_syntax bas704 toSci "-sNaN" -> ? Conversion_syntax bas705 toSci "-NaN" -> ? Conversion_syntax bas706 toSci "+Infinity" -> ? Conversion_syntax bas708 toSci "+sNaN" -> ? Conversion_syntax bas709 toSci "+NaN" -> ? Conversion_syntax bas710 toSci "INFINITY" -> ? Conversion_syntax bas711 toSci "SNAN" -> ? Conversion_syntax bas712 toSci "NAN" -> ? Conversion_syntax bas713 toSci "infinity" -> ? Conversion_syntax bas714 toSci "snan" -> ? Conversion_syntax bas715 toSci "nan" -> ? Conversion_syntax bas716 toSci "InFINITY" -> ? Conversion_syntax bas717 toSci "SnAN" -> ? Conversion_syntax bas718 toSci "nAN" -> ? Conversion_syntax bas719 toSci "iNfinity" -> ? Conversion_syntax bas720 toSci "sNan" -> ? Conversion_syntax bas721 toSci "Nan" -> ? Conversion_syntax bas601 toSci 0.000000000 -> 0 bas602 toSci 0.00000000 -> 0 bas603 toSci 0.0000000 -> 0 bas604 toSci 0.000000 -> 0 bas605 toSci 0.00000 -> 0 bas606 toSci 0.0000 -> 0 bas607 toSci 0.000 -> 0 bas608 toSci 0.00 -> 0 bas609 toSci 0.0 -> 0 bas610 toSci .0 -> 0 bas611 toSci 0. -> 0 bas612 toSci -.0 -> 0 bas613 toSci -0. -> 0 bas614 toSci -0.0 -> 0 bas615 toSci -0.00 -> 0 bas616 toSci -0.000 -> 0 bas617 toSci -0.0000 -> 0 bas618 toSci -0.00000 -> 0 bas619 toSci -0.000000 -> 0 bas620 toSci -0.0000000 -> 0 bas621 toSci -0.00000000 -> 0 bas622 toSci -0.000000000 -> 0 bas630 toSci 0.00E+0 -> 0 bas631 toSci 0.00E+1 -> 0 bas632 toSci 0.00E+2 -> 0 bas633 toSci 0.00E+3 -> 0 bas634 toSci 0.00E+4 -> 0 bas635 toSci 0.00E+5 -> 0 bas636 toSci 0.00E+6 -> 0 bas637 toSci 0.00E+7 -> 0 bas638 toSci 0.00E+8 -> 0 bas639 toSci 0.00E+9 -> 0 bas640 toSci 0.0E+0 -> 0 bas641 toSci 0.0E+1 -> 0 bas642 toSci 0.0E+2 -> 0 bas643 toSci 0.0E+3 -> 0 bas644 toSci 0.0E+4 -> 0 bas645 toSci 0.0E+5 -> 0 bas646 toSci 0.0E+6 -> 0 bas647 toSci 0.0E+7 -> 0 bas648 toSci 0.0E+8 -> 0 bas649 toSci 0.0E+9 -> 0 bas650 toSci 0E+0 -> 0 bas651 toSci 0E+1 -> 0 bas652 toSci 0E+2 -> 0 bas653 toSci 0E+3 -> 0 bas654 toSci 0E+4 -> 0 bas655 toSci 0E+5 -> 0 bas656 toSci 0E+6 -> 0 bas657 toSci 0E+7 -> 0 bas658 toSci 0E+8 -> 0 bas659 toSci 0E+9 -> 0 bas660 toSci 0.0E-0 -> 0 bas661 toSci 0.0E-1 -> 0 bas662 toSci 0.0E-2 -> 0 bas663 toSci 0.0E-3 -> 0 bas664 toSci 0.0E-4 -> 0 bas665 toSci 0.0E-5 -> 0 bas666 toSci 0.0E-6 -> 0 bas667 toSci 0.0E-7 -> 0 bas668 toSci 0.0E-8 -> 0 bas669 toSci 0.0E-9 -> 0 bas670 toSci 0.00E-0 -> 0 bas671 toSci 0.00E-1 -> 0 bas672 toSci 0.00E-2 -> 0 bas673 toSci 0.00E-3 -> 0 bas674 toSci 0.00E-4 -> 0 bas675 toSci 0.00E-5 -> 0 bas676 toSci 0.00E-6 -> 0 bas677 toSci 0.00E-7 -> 0 bas678 toSci 0.00E-8 -> 0 bas679 toSci 0.00E-9 -> 0 -- Zeros for toEng bas801 toEng 0.000000000 -> 0 bas802 toEng 0.00000000 -> 0 bas803 toEng 0.0000000 -> 0 bas804 toEng 0.000000 -> 0 bas805 toEng 0.00000 -> 0 bas806 toEng 0.0000 -> 0 bas807 toEng 0.000 -> 0 bas808 toEng 0.00 -> 0 bas809 toEng 0.0 -> 0 bas810 toEng .0 -> 0 bas811 toEng 0. -> 0 bas812 toEng -.0 -> 0 bas813 toEng -0. -> 0 bas814 toEng -0.0 -> 0 bas815 toEng -0.00 -> 0 bas816 toEng -0.000 -> 0 bas817 toEng -0.0000 -> 0 bas818 toEng -0.00000 -> 0 bas819 toEng -0.000000 -> 0 bas820 toEng -0.0000000 -> 0 bas821 toEng -0.00000000 -> 0 bas822 toEng -0.000000000 -> 0 bas830 toEng 0.00E+0 -> 0 bas831 toEng 0.00E+1 -> 0 bas832 toEng 0.00E+2 -> 0 bas833 toEng 0.00E+3 -> 0 bas834 toEng 0.00E+4 -> 0 bas835 toEng 0.00E+5 -> 0 bas836 toEng 0.00E+6 -> 0 bas837 toEng 0.00E+7 -> 0 bas838 toEng 0.00E+8 -> 0 bas839 toEng 0.00E+9 -> 0 bas840 toEng 0.0E+0 -> 0 bas841 toEng 0.0E+1 -> 0 bas842 toEng 0.0E+2 -> 0 bas843 toEng 0.0E+3 -> 0 bas844 toEng 0.0E+4 -> 0 bas845 toEng 0.0E+5 -> 0 bas846 toEng 0.0E+6 -> 0 bas847 toEng 0.0E+7 -> 0 bas848 toEng 0.0E+8 -> 0 bas849 toEng 0.0E+9 -> 0 bas850 toEng 0E+0 -> 0 bas851 toEng 0E+1 -> 0 bas852 toEng 0E+2 -> 0 bas853 toEng 0E+3 -> 0 bas854 toEng 0E+4 -> 0 bas855 toEng 0E+5 -> 0 bas856 toEng 0E+6 -> 0 bas857 toEng 0E+7 -> 0 bas858 toEng 0E+8 -> 0 bas859 toEng 0E+9 -> 0 bas860 toEng 0.0E-0 -> 0 bas861 toEng 0.0E-1 -> 0 bas862 toEng 0.0E-2 -> 0 bas863 toEng 0.0E-3 -> 0 bas864 toEng 0.0E-4 -> 0 bas865 toEng 0.0E-5 -> 0 bas866 toEng 0.0E-6 -> 0 bas867 toEng 0.0E-7 -> 0 bas868 toEng 0.0E-8 -> 0 bas869 toEng 0.0E-9 -> 0 bas870 toEng 0.00E-0 -> 0 bas871 toEng 0.00E-1 -> 0 bas872 toEng 0.00E-2 -> 0 bas873 toEng 0.00E-3 -> 0 bas874 toEng 0.00E-4 -> 0 bas875 toEng 0.00E-5 -> 0 bas876 toEng 0.00E-6 -> 0 bas877 toEng 0.00E-7 -> 0 bas878 toEng 0.00E-8 -> 0 bas879 toEng 0.00E-9 -> 0 -- Giga exponent maxexponent: 999999999 minexponent: -999999999 bas951 toSci '99e999' -> '9.9E+1000' bas952 toSci '999e999' -> '9.99E+1001' bas953 toSci '0.9e-999' -> '9E-1000' bas954 toSci '0.09e-999' -> '9E-1001' bas955 toSci '0.1e1001' -> '1E+1000' bas956 toSci '10e-1001' -> '1.0E-1000' bas957 toSci '0.9e9999' -> '9E+9998' bas958 toSci '99e-9999' -> '9.9E-9998' bas959 toSci '111e9997' -> '1.11E+9999' bas960 toSci '1111e-9999' -> '1.111E-9996' bas961 toSci '99e9999' -> '9.9E+10000' bas962 toSci '999e9999' -> '9.99E+10001' bas963 toSci '0.9e-9999' -> '9E-10000' bas964 toSci '0.09e-9999' -> '9E-10001' bas965 toSci '0.1e10001' -> '1E+10000' bas966 toSci '10e-10001' -> '1.0E-10000' bas967 toSci '0.9e99999' -> '9E+99998' bas968 toSci '99e-99999' -> '9.9E-99998' bas969 toSci '111e99999' -> '1.11E+100001' bas970 toSci '1111e-99999' -> '1.111E-99996' bas971 toSci "0.09e999999999" -> '9E+999999997' bas972 toSci "0.9e999999999" -> '9E+999999998' bas973 toSci "9e999999999" -> '9E+999999999' bas974 toSci "9.9e999999999" -> '9.9E+999999999' bas975 toSci "9.99e999999999" -> '9.99E+999999999' bas976 toSci "9.99e-999999999" -> '9.99E-999999999' bas977 toSci "9.9e-999999999" -> '9.9E-999999999' bas978 toSci "9e-999999999" -> '9E-999999999' bas979 toSci "99e-999999999" -> '9.9E-999999998' bas980 toSci "999e-999999999" -> '9.99E-999999997' -- Varying exponent maximums maxexponent: 0 minexponent: 0 emax001 toSci -1E+2 -> ? Overflow Inexact Rounded emax002 toSci -100 -> ? Overflow Inexact Rounded emax003 toSci -10 -> ? Overflow Inexact Rounded emax004 toSci -9.9 -> -9.9 emax005 toSci -9 -> -9 emax006 toSci -1 -> -1 emax007 toSci 0 -> 0 emax008 toSci 1 -> 1 emax009 toSci 9 -> 9 emax010 toSci 9.9 -> 9.9 emax011 toSci 10 -> ? Overflow Inexact Rounded emax012 toSci 100 -> ? Overflow Inexact Rounded emax013 toSci 1E+2 -> ? Overflow Inexact Rounded emax014 toSci 0.99 -> ? Underflow Subnormal Inexact Rounded emax015 toSci 0.1 -> ? Underflow Subnormal Inexact Rounded emax016 toSci 0.01 -> ? Underflow Subnormal Inexact Rounded emax017 toSci 1E-1 -> ? Underflow Subnormal Inexact Rounded emax018 toSci 1E-2 -> ? Underflow Subnormal Inexact Rounded maxexponent: 1 minexponent: -1 emax100 toSci -1E+3 -> ? Overflow Inexact Rounded emax101 toSci -1E+2 -> ? Overflow Inexact Rounded emax102 toSci -100 -> ? Overflow Inexact Rounded emax103 toSci -10 -> -10 emax104 toSci -9.9 -> -9.9 emax105 toSci -9 -> -9 emax106 toSci -1 -> -1 emax107 toSci 0 -> 0 emax108 toSci 1 -> 1 emax109 toSci 9 -> 9 emax110 toSci 9.9 -> 9.9 emax111 toSci 10 -> 10 emax112 toSci 100 -> ? Overflow Inexact Rounded emax113 toSci 1E+2 -> ? Overflow Inexact Rounded emax114 toSci 1E+3 -> ? Overflow Inexact Rounded emax115 toSci 0.99 -> 0.99 emax116 toSci 0.1 -> 0.1 emax117 toSci 0.01 -> ? Underflow Subnormal Inexact Rounded emax118 toSci 1E-1 -> 0.1 emax119 toSci 1E-2 -> ? Underflow Subnormal Inexact Rounded emax120 toSci 1E-3 -> ? Underflow Subnormal Inexact Rounded maxexponent: 2 minexponent: -2 emax200 toSci -1E+3 -> ? Overflow Inexact Rounded emax201 toSci -1E+2 -> -1E+2 emax202 toSci -100 -> -100 emax203 toSci -10 -> -10 emax204 toSci -9.9 -> -9.9 emax205 toSci -9 -> -9 emax206 toSci -1 -> -1 emax207 toSci 0 -> 0 emax208 toSci 1 -> 1 emax209 toSci 9 -> 9 emax210 toSci 9.9 -> 9.9 emax211 toSci 10 -> 10 emax212 toSci 100 -> 100 emax213 toSci 1E+2 -> 1E+2 emax214 toSci 1E+3 -> ? Overflow Inexact Rounded emax215 toSci 0.99 -> 0.99 emax216 toSci 0.1 -> 0.1 emax217 toSci 0.01 -> 0.01 emax218 toSci 0.001 -> ? Underflow Subnormal Inexact Rounded emax219 toSci 1E-1 -> 0.1 emax220 toSci 1E-2 -> 0.01 emax221 toSci 1E-3 -> ? Underflow Subnormal Inexact Rounded maxexponent: 7 minexponent: -7 emax231 toSci 1E-8 -> ? Underflow Subnormal Inexact Rounded emax232 toSci 1E-7 -> 1E-7 emax233 toSci 1E-6 -> 0.000001 emax234 toSci 1E-5 -> 0.00001 emax235 toSci 1E+5 -> 1E+5 emax236 toSci 1E+6 -> 1E+6 emax237 toSci 1E+7 -> 1E+7 emax238 toSci 1E+8 -> ? Overflow Inexact Rounded maxexponent: 9 minexponent: -9 emax241 toSci 1E-10 -> ? Underflow Subnormal Inexact Rounded emax242 toSci 1E-9 -> 1E-9 emax243 toSci 1E-8 -> 1E-8 emax244 toSci 1E-7 -> 1E-7 emax245 toSci 1E+7 -> 1E+7 emax246 toSci 1E+8 -> 1E+8 emax247 toSci 1E+9 -> 1E+9 emax248 toSci 1E+10 -> ? Overflow Inexact Rounded maxexponent: 10 -- boundary minexponent: -10 emax251 toSci 1E-11 -> ? Underflow Subnormal Inexact Rounded emax252 toSci 1E-10 -> 1E-10 emax253 toSci 1E-9 -> 1E-9 emax254 toSci 1E-8 -> 1E-8 emax255 toSci 1E+8 -> 1E+8 emax256 toSci 1E+9 -> 1E+9 emax257 toSci 1E+10 -> 1E+10 emax258 toSci 1E+11 -> ? Overflow Inexact Rounded emax261 toSci 1.00E-11 -> ? Underflow Subnormal Inexact Rounded emax262 toSci 1.00E-10 -> 1.00E-10 emax263 toSci 1.00E-9 -> 1.00E-9 emax264 toSci 1.00E-8 -> 1.00E-8 emax265 toSci 1.00E+8 -> 1.00E+8 emax266 toSci 1.00E+9 -> 1.00E+9 emax267 toSci 1.00E+10 -> 1.00E+10 emax268 toSci 1.00E+11 -> ? Overflow Inexact Rounded emax271 toSci 9.99E-11 -> ? Underflow Subnormal Inexact Rounded emax272 toSci 9.99E-10 -> 9.99E-10 emax273 toSci 9.99E-9 -> 9.99E-9 emax274 toSci 9.99E-8 -> 9.99E-8 emax275 toSci 9.99E+8 -> 9.99E+8 emax276 toSci 9.99E+9 -> 9.99E+9 emax277 toSci 9.99E+10 -> 9.99E+10 emax278 toSci 9.99E+11 -> ? Overflow Inexact Rounded maxexponent: 99 minexponent: -99 emax281 toSci 1E-100 -> ? Underflow Subnormal Inexact Rounded emax282 toSci 1E-99 -> 1E-99 emax283 toSci 1E-98 -> 1E-98 emax284 toSci 1E+98 -> 1E+98 emax285 toSci 1E+99 -> 1E+99 emax286 toSci 1E+100 -> ? Overflow Inexact Rounded maxexponent: 999 minexponent: -999 emax291 toSci 1E-1000 -> ? Underflow Subnormal Inexact Rounded emax292 toSci 1E-999 -> 1E-999 emax293 toSci 1E+999 -> 1E+999 emax294 toSci 1E+1000 -> ? Overflow Inexact Rounded maxexponent: 9999 minexponent: -9999 emax301 toSci 1E-10000 -> ? Underflow Subnormal Inexact Rounded emax302 toSci 1E-9999 -> 1E-9999 emax303 toSci 1E+9999 -> 1E+9999 emax304 toSci 1E+10000 -> ? Overflow Inexact Rounded maxexponent: 99999 minexponent: -99999 emax311 toSci 1E-100000 -> ? Underflow Subnormal Inexact Rounded emax312 toSci 1E-99999 -> 1E-99999 emax313 toSci 1E+99999 -> 1E+99999 emax314 toSci 1E+100000 -> ? Overflow Inexact Rounded maxexponent: 999999 minexponent: -999999 emax321 toSci 1E-1000000 -> ? Underflow Subnormal Inexact Rounded emax322 toSci 1E-999999 -> 1E-999999 emax323 toSci 1E+999999 -> 1E+999999 emax324 toSci 1E+1000000 -> ? Overflow Inexact Rounded maxexponent: 9999999 minexponent: -9999999 emax331 toSci 1E-10000000 -> ? Underflow Subnormal Inexact Rounded emax332 toSci 1E-9999999 -> 1E-9999999 emax333 toSci 1E+9999999 -> 1E+9999999 emax334 toSci 1E+10000000 -> ? Overflow Inexact Rounded maxexponent: 99999999 minexponent: -99999999 emax341 toSci 1E-100000000 -> ? Underflow Subnormal Inexact Rounded emax342 toSci 1E-99999999 -> 1E-99999999 emax343 toSci 1E+99999999 -> 1E+99999999 emax344 toSci 1E+100000000 -> ? Overflow Inexact Rounded maxexponent: 999999999 minexponent: -999999999 emax351 toSci 1E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax352 toSci 1E-999999999 -> 1E-999999999 emax353 toSci 1E+999999999 -> 1E+999999999 emax354 toSci 1E+1000000000 -> ? Overflow Inexact Rounded emax355 toSci 1.000E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax356 toSci 1.000E-999999999 -> 1.000E-999999999 emax357 toSci 1.000E+999999999 -> 1.000E+999999999 emax358 toSci 1.000E+1000000000 -> ? Overflow Inexact Rounded emax359 toSci 1.001E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax360 toSci 1.001E-999999999 -> 1.001E-999999999 emax361 toSci 1.001E+999999999 -> 1.001E+999999999 emax362 toSci 1.001E+1000000000 -> ? Overflow Inexact Rounded emax363 toSci 9.000E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax364 toSci 9.000E-999999999 -> 9.000E-999999999 emax365 toSci 9.000E+999999999 -> 9.000E+999999999 emax366 toSci 9.000E+1000000000 -> ? Overflow Inexact Rounded emax367 toSci 9.999E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax368 toSci 9.999E-999999999 -> 9.999E-999999999 emax369 toSci 9.999E+999999999 -> 9.999E+999999999 emax370 toSci 9.999E+1000000000 -> ? Overflow Inexact Rounded emax371 toSci -1E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax372 toSci -1E-999999999 -> -1E-999999999 emax373 toSci -1E+999999999 -> -1E+999999999 emax374 toSci -1E+1000000000 -> ? Overflow Inexact Rounded emax375 toSci -1.000E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax376 toSci -1.000E-999999999 -> -1.000E-999999999 emax377 toSci -1.000E+999999999 -> -1.000E+999999999 emax378 toSci -1.000E+1000000000 -> ? Overflow Inexact Rounded emax379 toSci -1.001E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax380 toSci -1.001E-999999999 -> -1.001E-999999999 emax381 toSci -1.001E+999999999 -> -1.001E+999999999 emax382 toSci -1.001E+1000000000 -> ? Overflow Inexact Rounded emax383 toSci -9.000E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax384 toSci -9.000E-999999999 -> -9.000E-999999999 emax385 toSci -9.000E+999999999 -> -9.000E+999999999 emax386 toSci -9.000E+1000000000 -> ? Overflow Inexact Rounded emax387 toSci -9.999E-1000000000 -> ? Underflow Subnormal Inexact Rounded emax388 toSci -9.999E-999999999 -> -9.999E-999999999 emax389 toSci -9.999E+999999999 -> -9.999E+999999999 emax390 toSci -9.999E+1000000000 -> ? Overflow Inexact Rounded