| ------------------------------------------------------------------------ |
| -- base.decTest -- base decimal <--> string conversions -- |
| -- 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.59 |
| extended: 1 |
| |
| -- This file tests base conversions from string to a decimal number |
| -- and back to a string (in either Scientific or Engineering form) |
| |
| -- Note that unlike other operations the operand is subject to rounding |
| -- to conform to emax and precision settings (that is, numbers will |
| -- conform to rules and exponent will be in permitted range). |
| |
| precision: 16 |
| rounding: half_up |
| maxExponent: 384 |
| minExponent: -383 |
| |
| basx001 toSci 0 -> 0 |
| basx002 toSci 1 -> 1 |
| basx003 toSci 1.0 -> 1.0 |
| basx004 toSci 1.00 -> 1.00 |
| basx005 toSci 10 -> 10 |
| basx006 toSci 1000 -> 1000 |
| basx007 toSci 10.0 -> 10.0 |
| basx008 toSci 10.1 -> 10.1 |
| basx009 toSci 10.4 -> 10.4 |
| basx010 toSci 10.5 -> 10.5 |
| basx011 toSci 10.6 -> 10.6 |
| basx012 toSci 10.9 -> 10.9 |
| basx013 toSci 11.0 -> 11.0 |
| basx014 toSci 1.234 -> 1.234 |
| basx015 toSci 0.123 -> 0.123 |
| basx016 toSci 0.012 -> 0.012 |
| basx017 toSci -0 -> -0 |
| basx018 toSci -0.0 -> -0.0 |
| basx019 toSci -00.00 -> -0.00 |
| |
| basx021 toSci -1 -> -1 |
| basx022 toSci -1.0 -> -1.0 |
| basx023 toSci -0.1 -> -0.1 |
| basx024 toSci -9.1 -> -9.1 |
| basx025 toSci -9.11 -> -9.11 |
| basx026 toSci -9.119 -> -9.119 |
| basx027 toSci -9.999 -> -9.999 |
| |
| basx030 toSci '123456789.123456' -> '123456789.123456' |
| basx031 toSci '123456789.000000' -> '123456789.000000' |
| basx032 toSci '123456789123456' -> '123456789123456' |
| basx033 toSci '0.0000123456789' -> '0.0000123456789' |
| basx034 toSci '0.00000123456789' -> '0.00000123456789' |
| basx035 toSci '0.000000123456789' -> '1.23456789E-7' |
| basx036 toSci '0.0000000123456789' -> '1.23456789E-8' |
| |
| basx037 toSci '0.123456789012344' -> '0.123456789012344' |
| basx038 toSci '0.123456789012345' -> '0.123456789012345' |
| |
| -- String [many more examples are implicitly tested elsewhere] |
| -- strings without E cannot generate E in result |
| basx040 toSci "12" -> '12' |
| basx041 toSci "-76" -> '-76' |
| basx042 toSci "12.76" -> '12.76' |
| basx043 toSci "+12.76" -> '12.76' |
| basx044 toSci "012.76" -> '12.76' |
| basx045 toSci "+0.003" -> '0.003' |
| basx046 toSci "17." -> '17' |
| basx047 toSci ".5" -> '0.5' |
| basx048 toSci "044" -> '44' |
| basx049 toSci "0044" -> '44' |
| basx050 toSci "0.0005" -> '0.0005' |
| basx051 toSci "00.00005" -> '0.00005' |
| basx052 toSci "0.000005" -> '0.000005' |
| basx053 toSci "0.0000050" -> '0.0000050' |
| basx054 toSci "0.0000005" -> '5E-7' |
| basx055 toSci "0.00000005" -> '5E-8' |
| basx056 toSci "12345678.543210" -> '12345678.543210' |
| basx057 toSci "2345678.543210" -> '2345678.543210' |
| basx058 toSci "345678.543210" -> '345678.543210' |
| basx059 toSci "0345678.54321" -> '345678.54321' |
| basx060 toSci "345678.5432" -> '345678.5432' |
| basx061 toSci "+345678.5432" -> '345678.5432' |
| basx062 toSci "+0345678.5432" -> '345678.5432' |
| basx063 toSci "+00345678.5432" -> '345678.5432' |
| basx064 toSci "-345678.5432" -> '-345678.5432' |
| basx065 toSci "-0345678.5432" -> '-345678.5432' |
| basx066 toSci "-00345678.5432" -> '-345678.5432' |
| -- examples |
| basx067 toSci "5E-6" -> '0.000005' |
| basx068 toSci "50E-7" -> '0.0000050' |
| basx069 toSci "5E-7" -> '5E-7' |
| |
| -- [No exotics as no Unicode] |
| |
| -- rounded with dots in all (including edge) places |
| basx071 toSci .1234567890123456123 -> 0.1234567890123456 Inexact Rounded |
| basx072 toSci 1.234567890123456123 -> 1.234567890123456 Inexact Rounded |
| basx073 toSci 12.34567890123456123 -> 12.34567890123456 Inexact Rounded |
| basx074 toSci 123.4567890123456123 -> 123.4567890123456 Inexact Rounded |
| basx075 toSci 1234.567890123456123 -> 1234.567890123456 Inexact Rounded |
| basx076 toSci 12345.67890123456123 -> 12345.67890123456 Inexact Rounded |
| basx077 toSci 123456.7890123456123 -> 123456.7890123456 Inexact Rounded |
| basx078 toSci 1234567.890123456123 -> 1234567.890123456 Inexact Rounded |
| basx079 toSci 12345678.90123456123 -> 12345678.90123456 Inexact Rounded |
| basx080 toSci 123456789.0123456123 -> 123456789.0123456 Inexact Rounded |
| basx081 toSci 1234567890.123456123 -> 1234567890.123456 Inexact Rounded |
| basx082 toSci 12345678901.23456123 -> 12345678901.23456 Inexact Rounded |
| basx083 toSci 123456789012.3456123 -> 123456789012.3456 Inexact Rounded |
| basx084 toSci 1234567890123.456123 -> 1234567890123.456 Inexact Rounded |
| basx085 toSci 12345678901234.56123 -> 12345678901234.56 Inexact Rounded |
| basx086 toSci 123456789012345.6123 -> 123456789012345.6 Inexact Rounded |
| basx087 toSci 1234567890123456.123 -> 1234567890123456 Inexact Rounded |
| basx088 toSci 12345678901234561.23 -> 1.234567890123456E+16 Inexact Rounded |
| basx089 toSci 123456789012345612.3 -> 1.234567890123456E+17 Inexact Rounded |
| basx090 toSci 1234567890123456123. -> 1.234567890123456E+18 Inexact Rounded |
| |
| -- Numbers with E |
| basx130 toSci "0.000E-1" -> '0.0000' |
| basx131 toSci "0.000E-2" -> '0.00000' |
| basx132 toSci "0.000E-3" -> '0.000000' |
| basx133 toSci "0.000E-4" -> '0E-7' |
| basx134 toSci "0.00E-2" -> '0.0000' |
| basx135 toSci "0.00E-3" -> '0.00000' |
| basx136 toSci "0.00E-4" -> '0.000000' |
| basx137 toSci "0.00E-5" -> '0E-7' |
| basx138 toSci "+0E+9" -> '0E+9' |
| basx139 toSci "-0E+9" -> '-0E+9' |
| basx140 toSci "1E+9" -> '1E+9' |
| basx141 toSci "1e+09" -> '1E+9' |
| basx142 toSci "1E+90" -> '1E+90' |
| basx143 toSci "+1E+009" -> '1E+9' |
| basx144 toSci "0E+9" -> '0E+9' |
| basx145 toSci "1E+9" -> '1E+9' |
| basx146 toSci "1E+09" -> '1E+9' |
| basx147 toSci "1e+90" -> '1E+90' |
| basx148 toSci "1E+009" -> '1E+9' |
| basx149 toSci "000E+9" -> '0E+9' |
| basx150 toSci "1E9" -> '1E+9' |
| basx151 toSci "1e09" -> '1E+9' |
| basx152 toSci "1E90" -> '1E+90' |
| basx153 toSci "1E009" -> '1E+9' |
| basx154 toSci "0E9" -> '0E+9' |
| basx155 toSci "0.000e+0" -> '0.000' |
| basx156 toSci "0.000E-1" -> '0.0000' |
| basx157 toSci "4E+9" -> '4E+9' |
| basx158 toSci "44E+9" -> '4.4E+10' |
| basx159 toSci "0.73e-7" -> '7.3E-8' |
| basx160 toSci "00E+9" -> '0E+9' |
| basx161 toSci "00E-9" -> '0E-9' |
| basx162 toSci "10E+9" -> '1.0E+10' |
| basx163 toSci "10E+09" -> '1.0E+10' |
| basx164 toSci "10e+90" -> '1.0E+91' |
| basx165 toSci "10E+009" -> '1.0E+10' |
| basx166 toSci "100e+9" -> '1.00E+11' |
| basx167 toSci "100e+09" -> '1.00E+11' |
| basx168 toSci "100E+90" -> '1.00E+92' |
| basx169 toSci "100e+009" -> '1.00E+11' |
| |
| basx170 toSci "1.265" -> '1.265' |
| basx171 toSci "1.265E-20" -> '1.265E-20' |
| basx172 toSci "1.265E-8" -> '1.265E-8' |
| basx173 toSci "1.265E-4" -> '0.0001265' |
| basx174 toSci "1.265E-3" -> '0.001265' |
| basx175 toSci "1.265E-2" -> '0.01265' |
| basx176 toSci "1.265E-1" -> '0.1265' |
| basx177 toSci "1.265E-0" -> '1.265' |
| basx178 toSci "1.265E+1" -> '12.65' |
| basx179 toSci "1.265E+2" -> '126.5' |
| basx180 toSci "1.265E+3" -> '1265' |
| basx181 toSci "1.265E+4" -> '1.265E+4' |
| basx182 toSci "1.265E+8" -> '1.265E+8' |
| basx183 toSci "1.265E+20" -> '1.265E+20' |
| |
| basx190 toSci "12.65" -> '12.65' |
| basx191 toSci "12.65E-20" -> '1.265E-19' |
| basx192 toSci "12.65E-8" -> '1.265E-7' |
| basx193 toSci "12.65E-4" -> '0.001265' |
| basx194 toSci "12.65E-3" -> '0.01265' |
| basx195 toSci "12.65E-2" -> '0.1265' |
| basx196 toSci "12.65E-1" -> '1.265' |
| basx197 toSci "12.65E-0" -> '12.65' |
| basx198 toSci "12.65E+1" -> '126.5' |
| basx199 toSci "12.65E+2" -> '1265' |
| basx200 toSci "12.65E+3" -> '1.265E+4' |
| basx201 toSci "12.65E+4" -> '1.265E+5' |
| basx202 toSci "12.65E+8" -> '1.265E+9' |
| basx203 toSci "12.65E+20" -> '1.265E+21' |
| |
| basx210 toSci "126.5" -> '126.5' |
| basx211 toSci "126.5E-20" -> '1.265E-18' |
| basx212 toSci "126.5E-8" -> '0.000001265' |
| basx213 toSci "126.5E-4" -> '0.01265' |
| basx214 toSci "126.5E-3" -> '0.1265' |
| basx215 toSci "126.5E-2" -> '1.265' |
| basx216 toSci "126.5E-1" -> '12.65' |
| basx217 toSci "126.5E-0" -> '126.5' |
| basx218 toSci "126.5E+1" -> '1265' |
| basx219 toSci "126.5E+2" -> '1.265E+4' |
| basx220 toSci "126.5E+3" -> '1.265E+5' |
| basx221 toSci "126.5E+4" -> '1.265E+6' |
| basx222 toSci "126.5E+8" -> '1.265E+10' |
| basx223 toSci "126.5E+20" -> '1.265E+22' |
| |
| basx230 toSci "1265" -> '1265' |
| basx231 toSci "1265E-20" -> '1.265E-17' |
| basx232 toSci "1265E-8" -> '0.00001265' |
| basx233 toSci "1265E-4" -> '0.1265' |
| basx234 toSci "1265E-3" -> '1.265' |
| basx235 toSci "1265E-2" -> '12.65' |
| basx236 toSci "1265E-1" -> '126.5' |
| basx237 toSci "1265E-0" -> '1265' |
| basx238 toSci "1265E+1" -> '1.265E+4' |
| basx239 toSci "1265E+2" -> '1.265E+5' |
| basx240 toSci "1265E+3" -> '1.265E+6' |
| basx241 toSci "1265E+4" -> '1.265E+7' |
| basx242 toSci "1265E+8" -> '1.265E+11' |
| basx243 toSci "1265E+20" -> '1.265E+23' |
| |
| basx250 toSci "0.1265" -> '0.1265' |
| basx251 toSci "0.1265E-20" -> '1.265E-21' |
| basx252 toSci "0.1265E-8" -> '1.265E-9' |
| basx253 toSci "0.1265E-4" -> '0.00001265' |
| basx254 toSci "0.1265E-3" -> '0.0001265' |
| basx255 toSci "0.1265E-2" -> '0.001265' |
| basx256 toSci "0.1265E-1" -> '0.01265' |
| basx257 toSci "0.1265E-0" -> '0.1265' |
| basx258 toSci "0.1265E+1" -> '1.265' |
| basx259 toSci "0.1265E+2" -> '12.65' |
| basx260 toSci "0.1265E+3" -> '126.5' |
| basx261 toSci "0.1265E+4" -> '1265' |
| basx262 toSci "0.1265E+8" -> '1.265E+7' |
| basx263 toSci "0.1265E+20" -> '1.265E+19' |
| |
| -- some more negative zeros [systematic tests below] |
| basx290 toSci "-0.000E-1" -> '-0.0000' |
| basx291 toSci "-0.000E-2" -> '-0.00000' |
| basx292 toSci "-0.000E-3" -> '-0.000000' |
| basx293 toSci "-0.000E-4" -> '-0E-7' |
| basx294 toSci "-0.00E-2" -> '-0.0000' |
| basx295 toSci "-0.00E-3" -> '-0.00000' |
| basx296 toSci "-0.0E-2" -> '-0.000' |
| basx297 toSci "-0.0E-3" -> '-0.0000' |
| basx298 toSci "-0E-2" -> '-0.00' |
| basx299 toSci "-0E-3" -> '-0.000' |
| |
| -- Engineering notation tests |
| basx301 toSci 10e12 -> 1.0E+13 |
| basx302 toEng 10e12 -> 10E+12 |
| basx303 toSci 10e11 -> 1.0E+12 |
| basx304 toEng 10e11 -> 1.0E+12 |
| basx305 toSci 10e10 -> 1.0E+11 |
| basx306 toEng 10e10 -> 100E+9 |
| basx307 toSci 10e9 -> 1.0E+10 |
| basx308 toEng 10e9 -> 10E+9 |
| basx309 toSci 10e8 -> 1.0E+9 |
| basx310 toEng 10e8 -> 1.0E+9 |
| basx311 toSci 10e7 -> 1.0E+8 |
| basx312 toEng 10e7 -> 100E+6 |
| basx313 toSci 10e6 -> 1.0E+7 |
| basx314 toEng 10e6 -> 10E+6 |
| basx315 toSci 10e5 -> 1.0E+6 |
| basx316 toEng 10e5 -> 1.0E+6 |
| basx317 toSci 10e4 -> 1.0E+5 |
| basx318 toEng 10e4 -> 100E+3 |
| basx319 toSci 10e3 -> 1.0E+4 |
| basx320 toEng 10e3 -> 10E+3 |
| basx321 toSci 10e2 -> 1.0E+3 |
| basx322 toEng 10e2 -> 1.0E+3 |
| basx323 toSci 10e1 -> 1.0E+2 |
| basx324 toEng 10e1 -> 100 |
| basx325 toSci 10e0 -> 10 |
| basx326 toEng 10e0 -> 10 |
| basx327 toSci 10e-1 -> 1.0 |
| basx328 toEng 10e-1 -> 1.0 |
| basx329 toSci 10e-2 -> 0.10 |
| basx330 toEng 10e-2 -> 0.10 |
| basx331 toSci 10e-3 -> 0.010 |
| basx332 toEng 10e-3 -> 0.010 |
| basx333 toSci 10e-4 -> 0.0010 |
| basx334 toEng 10e-4 -> 0.0010 |
| basx335 toSci 10e-5 -> 0.00010 |
| basx336 toEng 10e-5 -> 0.00010 |
| basx337 toSci 10e-6 -> 0.000010 |
| basx338 toEng 10e-6 -> 0.000010 |
| basx339 toSci 10e-7 -> 0.0000010 |
| basx340 toEng 10e-7 -> 0.0000010 |
| basx341 toSci 10e-8 -> 1.0E-7 |
| basx342 toEng 10e-8 -> 100E-9 |
| basx343 toSci 10e-9 -> 1.0E-8 |
| basx344 toEng 10e-9 -> 10E-9 |
| basx345 toSci 10e-10 -> 1.0E-9 |
| basx346 toEng 10e-10 -> 1.0E-9 |
| basx347 toSci 10e-11 -> 1.0E-10 |
| basx348 toEng 10e-11 -> 100E-12 |
| basx349 toSci 10e-12 -> 1.0E-11 |
| basx350 toEng 10e-12 -> 10E-12 |
| basx351 toSci 10e-13 -> 1.0E-12 |
| basx352 toEng 10e-13 -> 1.0E-12 |
| |
| basx361 toSci 7E12 -> 7E+12 |
| basx362 toEng 7E12 -> 7E+12 |
| basx363 toSci 7E11 -> 7E+11 |
| basx364 toEng 7E11 -> 700E+9 |
| basx365 toSci 7E10 -> 7E+10 |
| basx366 toEng 7E10 -> 70E+9 |
| basx367 toSci 7E9 -> 7E+9 |
| basx368 toEng 7E9 -> 7E+9 |
| basx369 toSci 7E8 -> 7E+8 |
| basx370 toEng 7E8 -> 700E+6 |
| basx371 toSci 7E7 -> 7E+7 |
| basx372 toEng 7E7 -> 70E+6 |
| basx373 toSci 7E6 -> 7E+6 |
| basx374 toEng 7E6 -> 7E+6 |
| basx375 toSci 7E5 -> 7E+5 |
| basx376 toEng 7E5 -> 700E+3 |
| basx377 toSci 7E4 -> 7E+4 |
| basx378 toEng 7E4 -> 70E+3 |
| basx379 toSci 7E3 -> 7E+3 |
| basx380 toEng 7E3 -> 7E+3 |
| basx381 toSci 7E2 -> 7E+2 |
| basx382 toEng 7E2 -> 700 |
| basx383 toSci 7E1 -> 7E+1 |
| basx384 toEng 7E1 -> 70 |
| basx385 toSci 7E0 -> 7 |
| basx386 toEng 7E0 -> 7 |
| basx387 toSci 7E-1 -> 0.7 |
| basx388 toEng 7E-1 -> 0.7 |
| basx389 toSci 7E-2 -> 0.07 |
| basx390 toEng 7E-2 -> 0.07 |
| basx391 toSci 7E-3 -> 0.007 |
| basx392 toEng 7E-3 -> 0.007 |
| basx393 toSci 7E-4 -> 0.0007 |
| basx394 toEng 7E-4 -> 0.0007 |
| basx395 toSci 7E-5 -> 0.00007 |
| basx396 toEng 7E-5 -> 0.00007 |
| basx397 toSci 7E-6 -> 0.000007 |
| basx398 toEng 7E-6 -> 0.000007 |
| basx399 toSci 7E-7 -> 7E-7 |
| basx400 toEng 7E-7 -> 700E-9 |
| basx401 toSci 7E-8 -> 7E-8 |
| basx402 toEng 7E-8 -> 70E-9 |
| basx403 toSci 7E-9 -> 7E-9 |
| basx404 toEng 7E-9 -> 7E-9 |
| basx405 toSci 7E-10 -> 7E-10 |
| basx406 toEng 7E-10 -> 700E-12 |
| basx407 toSci 7E-11 -> 7E-11 |
| basx408 toEng 7E-11 -> 70E-12 |
| basx409 toSci 7E-12 -> 7E-12 |
| basx410 toEng 7E-12 -> 7E-12 |
| basx411 toSci 7E-13 -> 7E-13 |
| basx412 toEng 7E-13 -> 700E-15 |
| |
| -- Exacts remain exact up to precision .. |
| precision: 9 |
| basx420 toSci 100 -> 100 |
| basx421 toEng 100 -> 100 |
| basx422 toSci 1000 -> 1000 |
| basx423 toEng 1000 -> 1000 |
| basx424 toSci 999.9 -> 999.9 |
| basx425 toEng 999.9 -> 999.9 |
| basx426 toSci 1000.0 -> 1000.0 |
| basx427 toEng 1000.0 -> 1000.0 |
| basx428 toSci 1000.1 -> 1000.1 |
| basx429 toEng 1000.1 -> 1000.1 |
| basx430 toSci 10000 -> 10000 |
| basx431 toEng 10000 -> 10000 |
| basx432 toSci 100000 -> 100000 |
| basx433 toEng 100000 -> 100000 |
| basx434 toSci 1000000 -> 1000000 |
| basx435 toEng 1000000 -> 1000000 |
| basx436 toSci 10000000 -> 10000000 |
| basx437 toEng 10000000 -> 10000000 |
| basx438 toSci 100000000 -> 100000000 |
| basx439 toEng 100000000 -> 100000000 |
| basx440 toSci 1000000000 -> 1.00000000E+9 Rounded |
| basx441 toEng 1000000000 -> 1.00000000E+9 Rounded |
| basx442 toSci 1000000000 -> 1.00000000E+9 Rounded |
| basx443 toEng 1000000000 -> 1.00000000E+9 Rounded |
| basx444 toSci 1000000003 -> 1.00000000E+9 Rounded Inexact |
| basx445 toEng 1000000003 -> 1.00000000E+9 Rounded Inexact |
| basx446 toSci 1000000005 -> 1.00000001E+9 Rounded Inexact |
| basx447 toEng 1000000005 -> 1.00000001E+9 Rounded Inexact |
| basx448 toSci 10000000050 -> 1.00000001E+10 Rounded Inexact |
| basx449 toEng 10000000050 -> 10.0000001E+9 Rounded Inexact |
| basx450 toSci 1000000009 -> 1.00000001E+9 Rounded Inexact |
| basx451 toEng 1000000009 -> 1.00000001E+9 Rounded Inexact |
| basx452 toSci 10000000000 -> 1.00000000E+10 Rounded |
| basx453 toEng 10000000000 -> 10.0000000E+9 Rounded |
| basx454 toSci 10000000003 -> 1.00000000E+10 Rounded Inexact |
| basx455 toEng 10000000003 -> 10.0000000E+9 Rounded Inexact |
| basx456 toSci 10000000005 -> 1.00000000E+10 Rounded Inexact |
| basx457 toEng 10000000005 -> 10.0000000E+9 Rounded Inexact |
| basx458 toSci 10000000009 -> 1.00000000E+10 Rounded Inexact |
| basx459 toEng 10000000009 -> 10.0000000E+9 Rounded Inexact |
| basx460 toSci 100000000000 -> 1.00000000E+11 Rounded |
| basx461 toEng 100000000000 -> 100.000000E+9 Rounded |
| basx462 toSci 100000000300 -> 1.00000000E+11 Rounded Inexact |
| basx463 toEng 100000000300 -> 100.000000E+9 Rounded Inexact |
| basx464 toSci 100000000500 -> 1.00000001E+11 Rounded Inexact |
| basx465 toEng 100000000500 -> 100.000001E+9 Rounded Inexact |
| basx466 toSci 100000000900 -> 1.00000001E+11 Rounded Inexact |
| basx467 toEng 100000000900 -> 100.000001E+9 Rounded Inexact |
| basx468 toSci 1000000000000 -> 1.00000000E+12 Rounded |
| basx469 toEng 1000000000000 -> 1.00000000E+12 Rounded |
| basx470 toSci 1000000003000 -> 1.00000000E+12 Rounded Inexact |
| basx471 toEng 1000000003000 -> 1.00000000E+12 Rounded Inexact |
| basx472 toSci 1000000005000 -> 1.00000001E+12 Rounded Inexact |
| basx473 toEng 1000000005000 -> 1.00000001E+12 Rounded Inexact |
| basx474 toSci 1000000009000 -> 1.00000001E+12 Rounded Inexact |
| basx475 toEng 1000000009000 -> 1.00000001E+12 Rounded Inexact |
| |
| -- all-nines rounding |
| precision: 9 |
| rounding: half_up |
| basx270 toSci 999999999 -> 999999999 |
| basx271 toSci 9999999990 -> 9.99999999E+9 Rounded |
| basx272 toSci 9999999991 -> 9.99999999E+9 Rounded Inexact |
| basx273 toSci 9999999992 -> 9.99999999E+9 Rounded Inexact |
| basx274 toSci 9999999993 -> 9.99999999E+9 Rounded Inexact |
| basx275 toSci 9999999994 -> 9.99999999E+9 Rounded Inexact |
| basx276 toSci 9999999995 -> 1.00000000E+10 Rounded Inexact |
| basx277 toSci 9999999996 -> 1.00000000E+10 Rounded Inexact |
| basx278 toSci 9999999997 -> 1.00000000E+10 Rounded Inexact |
| basx279 toSci 9999999998 -> 1.00000000E+10 Rounded Inexact |
| basx280 toSci 9999999999 -> 1.00000000E+10 Rounded Inexact |
| basx281 toSci 9999999999999999 -> 1.00000000E+16 Rounded Inexact |
| |
| -- check rounding modes heeded |
| precision: 5 |
| rounding: ceiling |
| bsrx401 toSci 1.23450 -> 1.2345 Rounded |
| bsrx402 toSci 1.234549 -> 1.2346 Rounded Inexact |
| bsrx403 toSci 1.234550 -> 1.2346 Rounded Inexact |
| bsrx404 toSci 1.234551 -> 1.2346 Rounded Inexact |
| rounding: up |
| bsrx405 toSci 1.23450 -> 1.2345 Rounded |
| bsrx406 toSci 1.234549 -> 1.2346 Rounded Inexact |
| bsrx407 toSci 1.234550 -> 1.2346 Rounded Inexact |
| bsrx408 toSci 1.234551 -> 1.2346 Rounded Inexact |
| rounding: floor |
| bsrx410 toSci 1.23450 -> 1.2345 Rounded |
| bsrx411 toSci 1.234549 -> 1.2345 Rounded Inexact |
| bsrx412 toSci 1.234550 -> 1.2345 Rounded Inexact |
| bsrx413 toSci 1.234551 -> 1.2345 Rounded Inexact |
| rounding: half_down |
| bsrx415 toSci 1.23450 -> 1.2345 Rounded |
| bsrx416 toSci 1.234549 -> 1.2345 Rounded Inexact |
| bsrx417 toSci 1.234550 -> 1.2345 Rounded Inexact |
| bsrx418 toSci 1.234650 -> 1.2346 Rounded Inexact |
| bsrx419 toSci 1.234551 -> 1.2346 Rounded Inexact |
| rounding: half_even |
| bsrx421 toSci 1.23450 -> 1.2345 Rounded |
| bsrx422 toSci 1.234549 -> 1.2345 Rounded Inexact |
| bsrx423 toSci 1.234550 -> 1.2346 Rounded Inexact |
| bsrx424 toSci 1.234650 -> 1.2346 Rounded Inexact |
| bsrx425 toSci 1.234551 -> 1.2346 Rounded Inexact |
| rounding: down |
| bsrx426 toSci 1.23450 -> 1.2345 Rounded |
| bsrx427 toSci 1.234549 -> 1.2345 Rounded Inexact |
| bsrx428 toSci 1.234550 -> 1.2345 Rounded Inexact |
| bsrx429 toSci 1.234551 -> 1.2345 Rounded Inexact |
| rounding: half_up |
| bsrx431 toSci 1.23450 -> 1.2345 Rounded |
| bsrx432 toSci 1.234549 -> 1.2345 Rounded Inexact |
| bsrx433 toSci 1.234550 -> 1.2346 Rounded Inexact |
| bsrx434 toSci 1.234650 -> 1.2347 Rounded Inexact |
| bsrx435 toSci 1.234551 -> 1.2346 Rounded Inexact |
| -- negatives |
| rounding: ceiling |
| bsrx501 toSci -1.23450 -> -1.2345 Rounded |
| bsrx502 toSci -1.234549 -> -1.2345 Rounded Inexact |
| bsrx503 toSci -1.234550 -> -1.2345 Rounded Inexact |
| bsrx504 toSci -1.234551 -> -1.2345 Rounded Inexact |
| rounding: up |
| bsrx505 toSci -1.23450 -> -1.2345 Rounded |
| bsrx506 toSci -1.234549 -> -1.2346 Rounded Inexact |
| bsrx507 toSci -1.234550 -> -1.2346 Rounded Inexact |
| bsrx508 toSci -1.234551 -> -1.2346 Rounded Inexact |
| rounding: floor |
| bsrx510 toSci -1.23450 -> -1.2345 Rounded |
| bsrx511 toSci -1.234549 -> -1.2346 Rounded Inexact |
| bsrx512 toSci -1.234550 -> -1.2346 Rounded Inexact |
| bsrx513 toSci -1.234551 -> -1.2346 Rounded Inexact |
| rounding: half_down |
| bsrx515 toSci -1.23450 -> -1.2345 Rounded |
| bsrx516 toSci -1.234549 -> -1.2345 Rounded Inexact |
| bsrx517 toSci -1.234550 -> -1.2345 Rounded Inexact |
| bsrx518 toSci -1.234650 -> -1.2346 Rounded Inexact |
| bsrx519 toSci -1.234551 -> -1.2346 Rounded Inexact |
| rounding: half_even |
| bsrx521 toSci -1.23450 -> -1.2345 Rounded |
| bsrx522 toSci -1.234549 -> -1.2345 Rounded Inexact |
| bsrx523 toSci -1.234550 -> -1.2346 Rounded Inexact |
| bsrx524 toSci -1.234650 -> -1.2346 Rounded Inexact |
| bsrx525 toSci -1.234551 -> -1.2346 Rounded Inexact |
| rounding: down |
| bsrx526 toSci -1.23450 -> -1.2345 Rounded |
| bsrx527 toSci -1.234549 -> -1.2345 Rounded Inexact |
| bsrx528 toSci -1.234550 -> -1.2345 Rounded Inexact |
| bsrx529 toSci -1.234551 -> -1.2345 Rounded Inexact |
| rounding: half_up |
| bsrx531 toSci -1.23450 -> -1.2345 Rounded |
| bsrx532 toSci -1.234549 -> -1.2345 Rounded Inexact |
| bsrx533 toSci -1.234550 -> -1.2346 Rounded Inexact |
| bsrx534 toSci -1.234650 -> -1.2347 Rounded Inexact |
| bsrx535 toSci -1.234551 -> -1.2346 Rounded Inexact |
| |
| -- a few larger exponents |
| maxExponent: 999999999 |
| minExponent: -999999999 |
| basx480 toSci "0.09e999" -> '9E+997' |
| basx481 toSci "0.9e999" -> '9E+998' |
| basx482 toSci "9e999" -> '9E+999' |
| basx483 toSci "9.9e999" -> '9.9E+999' |
| basx484 toSci "9.99e999" -> '9.99E+999' |
| basx485 toSci "9.99e-999" -> '9.99E-999' |
| basx486 toSci "9.9e-999" -> '9.9E-999' |
| basx487 toSci "9e-999" -> '9E-999' |
| basx489 toSci "99e-999" -> '9.9E-998' |
| basx490 toSci "999e-999" -> '9.99E-997' |
| basx491 toSci '0.9e-998' -> '9E-999' |
| basx492 toSci '0.09e-997' -> '9E-999' |
| basx493 toSci '0.1e1000' -> '1E+999' |
| basx494 toSci '10e-1000' -> '1.0E-999' |
| |
| rounding: half_up |
| precision: 9 |
| |
| -- The 'baddies' tests from DiagBigDecimal, plus some new ones |
| basx500 toSci '1..2' -> NaN Conversion_syntax |
| basx501 toSci '.' -> NaN Conversion_syntax |
| basx502 toSci '..' -> NaN Conversion_syntax |
| basx503 toSci '++1' -> NaN Conversion_syntax |
| basx504 toSci '--1' -> NaN Conversion_syntax |
| basx505 toSci '-+1' -> NaN Conversion_syntax |
| basx506 toSci '+-1' -> NaN Conversion_syntax |
| basx507 toSci '12e' -> NaN Conversion_syntax |
| basx508 toSci '12e++' -> NaN Conversion_syntax |
| basx509 toSci '12f4' -> NaN Conversion_syntax |
| basx510 toSci ' +1' -> NaN Conversion_syntax |
| basx511 toSci '+ 1' -> NaN Conversion_syntax |
| basx512 toSci '12 ' -> NaN Conversion_syntax |
| basx513 toSci ' + 1' -> NaN Conversion_syntax |
| basx514 toSci ' - 1 ' -> NaN Conversion_syntax |
| basx515 toSci 'x' -> NaN Conversion_syntax |
| basx516 toSci '-1-' -> NaN Conversion_syntax |
| basx517 toSci '12-' -> NaN Conversion_syntax |
| basx518 toSci '3+' -> NaN Conversion_syntax |
| basx519 toSci '' -> NaN Conversion_syntax |
| basx520 toSci '1e-' -> NaN Conversion_syntax |
| basx521 toSci '7e99999a' -> NaN Conversion_syntax |
| basx522 toSci '7e123567890x' -> NaN Conversion_syntax |
| basx523 toSci '7e12356789012x' -> NaN Conversion_syntax |
| basx524 toSci '' -> NaN Conversion_syntax |
| basx525 toSci 'e100' -> NaN Conversion_syntax |
| basx526 toSci '\u0e5a' -> NaN Conversion_syntax |
| basx527 toSci '\u0b65' -> NaN Conversion_syntax |
| basx528 toSci '123,65' -> NaN Conversion_syntax |
| basx529 toSci '1.34.5' -> NaN Conversion_syntax |
| basx530 toSci '.123.5' -> NaN Conversion_syntax |
| basx531 toSci '01.35.' -> NaN Conversion_syntax |
| basx532 toSci '01.35-' -> NaN Conversion_syntax |
| basx533 toSci '0000..' -> NaN Conversion_syntax |
| basx534 toSci '.0000.' -> NaN Conversion_syntax |
| basx535 toSci '00..00' -> NaN Conversion_syntax |
| basx536 toSci '111e*123' -> NaN Conversion_syntax |
| basx537 toSci '111e123-' -> NaN Conversion_syntax |
| basx538 toSci '111e+12+' -> NaN Conversion_syntax |
| basx539 toSci '111e1-3-' -> NaN Conversion_syntax |
| basx540 toSci '111e1*23' -> NaN Conversion_syntax |
| basx541 toSci '111e1e+3' -> NaN Conversion_syntax |
| basx542 toSci '1e1.0' -> NaN Conversion_syntax |
| basx543 toSci '1e123e' -> NaN Conversion_syntax |
| basx544 toSci 'ten' -> NaN Conversion_syntax |
| basx545 toSci 'ONE' -> NaN Conversion_syntax |
| basx546 toSci '1e.1' -> NaN Conversion_syntax |
| basx547 toSci '1e1.' -> NaN Conversion_syntax |
| basx548 toSci '1ee' -> NaN Conversion_syntax |
| basx549 toSci 'e+1' -> NaN Conversion_syntax |
| basx550 toSci '1.23.4' -> NaN Conversion_syntax |
| basx551 toSci '1.2.1' -> NaN Conversion_syntax |
| basx552 toSci '1E+1.2' -> NaN Conversion_syntax |
| basx553 toSci '1E+1.2.3' -> NaN Conversion_syntax |
| basx554 toSci '1E++1' -> NaN Conversion_syntax |
| basx555 toSci '1E--1' -> NaN Conversion_syntax |
| basx556 toSci '1E+-1' -> NaN Conversion_syntax |
| basx557 toSci '1E-+1' -> NaN Conversion_syntax |
| basx558 toSci '1E''1' -> NaN Conversion_syntax |
| basx559 toSci "1E""1" -> NaN Conversion_syntax |
| basx560 toSci "1E""""" -> NaN Conversion_syntax |
| -- Near-specials |
| basx561 toSci "qNaN" -> NaN Conversion_syntax |
| basx562 toSci "NaNq" -> NaN Conversion_syntax |
| basx563 toSci "NaNs" -> NaN Conversion_syntax |
| basx564 toSci "Infi" -> NaN Conversion_syntax |
| basx565 toSci "Infin" -> NaN Conversion_syntax |
| basx566 toSci "Infini" -> NaN Conversion_syntax |
| basx567 toSci "Infinit" -> NaN Conversion_syntax |
| basx568 toSci "-Infinit" -> NaN Conversion_syntax |
| basx569 toSci "0Inf" -> NaN Conversion_syntax |
| basx570 toSci "9Inf" -> NaN Conversion_syntax |
| basx571 toSci "-0Inf" -> NaN Conversion_syntax |
| basx572 toSci "-9Inf" -> NaN Conversion_syntax |
| basx573 toSci "-sNa" -> NaN Conversion_syntax |
| basx574 toSci "xNaN" -> NaN Conversion_syntax |
| basx575 toSci "0sNaN" -> NaN Conversion_syntax |
| |
| -- some baddies with dots and Es and dots and specials |
| basx576 toSci 'e+1' -> NaN Conversion_syntax |
| basx577 toSci '.e+1' -> NaN Conversion_syntax |
| basx578 toSci '+.e+1' -> NaN Conversion_syntax |
| basx579 toSci '-.e+' -> NaN Conversion_syntax |
| basx580 toSci '-.e' -> NaN Conversion_syntax |
| basx581 toSci 'E+1' -> NaN Conversion_syntax |
| basx582 toSci '.E+1' -> NaN Conversion_syntax |
| basx583 toSci '+.E+1' -> NaN Conversion_syntax |
| basx584 toSci '-.E+' -> NaN Conversion_syntax |
| basx585 toSci '-.E' -> NaN Conversion_syntax |
| |
| basx586 toSci '.NaN' -> NaN Conversion_syntax |
| basx587 toSci '-.NaN' -> NaN Conversion_syntax |
| basx588 toSci '+.sNaN' -> NaN Conversion_syntax |
| basx589 toSci '+.Inf' -> NaN Conversion_syntax |
| basx590 toSci '.Infinity' -> NaN Conversion_syntax |
| |
| -- Zeros |
| basx601 toSci 0.000000000 -> 0E-9 |
| basx602 toSci 0.00000000 -> 0E-8 |
| basx603 toSci 0.0000000 -> 0E-7 |
| basx604 toSci 0.000000 -> 0.000000 |
| basx605 toSci 0.00000 -> 0.00000 |
| basx606 toSci 0.0000 -> 0.0000 |
| basx607 toSci 0.000 -> 0.000 |
| basx608 toSci 0.00 -> 0.00 |
| basx609 toSci 0.0 -> 0.0 |
| basx610 toSci .0 -> 0.0 |
| basx611 toSci 0. -> 0 |
| basx612 toSci -.0 -> -0.0 |
| basx613 toSci -0. -> -0 |
| basx614 toSci -0.0 -> -0.0 |
| basx615 toSci -0.00 -> -0.00 |
| basx616 toSci -0.000 -> -0.000 |
| basx617 toSci -0.0000 -> -0.0000 |
| basx618 toSci -0.00000 -> -0.00000 |
| basx619 toSci -0.000000 -> -0.000000 |
| basx620 toSci -0.0000000 -> -0E-7 |
| basx621 toSci -0.00000000 -> -0E-8 |
| basx622 toSci -0.000000000 -> -0E-9 |
| |
| basx630 toSci 0.00E+0 -> 0.00 |
| basx631 toSci 0.00E+1 -> 0.0 |
| basx632 toSci 0.00E+2 -> 0 |
| basx633 toSci 0.00E+3 -> 0E+1 |
| basx634 toSci 0.00E+4 -> 0E+2 |
| basx635 toSci 0.00E+5 -> 0E+3 |
| basx636 toSci 0.00E+6 -> 0E+4 |
| basx637 toSci 0.00E+7 -> 0E+5 |
| basx638 toSci 0.00E+8 -> 0E+6 |
| basx639 toSci 0.00E+9 -> 0E+7 |
| |
| basx640 toSci 0.0E+0 -> 0.0 |
| basx641 toSci 0.0E+1 -> 0 |
| basx642 toSci 0.0E+2 -> 0E+1 |
| basx643 toSci 0.0E+3 -> 0E+2 |
| basx644 toSci 0.0E+4 -> 0E+3 |
| basx645 toSci 0.0E+5 -> 0E+4 |
| basx646 toSci 0.0E+6 -> 0E+5 |
| basx647 toSci 0.0E+7 -> 0E+6 |
| basx648 toSci 0.0E+8 -> 0E+7 |
| basx649 toSci 0.0E+9 -> 0E+8 |
| |
| basx650 toSci 0E+0 -> 0 |
| basx651 toSci 0E+1 -> 0E+1 |
| basx652 toSci 0E+2 -> 0E+2 |
| basx653 toSci 0E+3 -> 0E+3 |
| basx654 toSci 0E+4 -> 0E+4 |
| basx655 toSci 0E+5 -> 0E+5 |
| basx656 toSci 0E+6 -> 0E+6 |
| basx657 toSci 0E+7 -> 0E+7 |
| basx658 toSci 0E+8 -> 0E+8 |
| basx659 toSci 0E+9 -> 0E+9 |
| |
| basx660 toSci 0.0E-0 -> 0.0 |
| basx661 toSci 0.0E-1 -> 0.00 |
| basx662 toSci 0.0E-2 -> 0.000 |
| basx663 toSci 0.0E-3 -> 0.0000 |
| basx664 toSci 0.0E-4 -> 0.00000 |
| basx665 toSci 0.0E-5 -> 0.000000 |
| basx666 toSci 0.0E-6 -> 0E-7 |
| basx667 toSci 0.0E-7 -> 0E-8 |
| basx668 toSci 0.0E-8 -> 0E-9 |
| basx669 toSci 0.0E-9 -> 0E-10 |
| |
| basx670 toSci 0.00E-0 -> 0.00 |
| basx671 toSci 0.00E-1 -> 0.000 |
| basx672 toSci 0.00E-2 -> 0.0000 |
| basx673 toSci 0.00E-3 -> 0.00000 |
| basx674 toSci 0.00E-4 -> 0.000000 |
| basx675 toSci 0.00E-5 -> 0E-7 |
| basx676 toSci 0.00E-6 -> 0E-8 |
| basx677 toSci 0.00E-7 -> 0E-9 |
| basx678 toSci 0.00E-8 -> 0E-10 |
| basx679 toSci 0.00E-9 -> 0E-11 |
| |
| basx680 toSci 000000. -> 0 |
| basx681 toSci 00000. -> 0 |
| basx682 toSci 0000. -> 0 |
| basx683 toSci 000. -> 0 |
| basx684 toSci 00. -> 0 |
| basx685 toSci 0. -> 0 |
| basx686 toSci +00000. -> 0 |
| basx687 toSci -00000. -> -0 |
| basx688 toSci +0. -> 0 |
| basx689 toSci -0. -> -0 |
| |
| -- Specials |
| precision: 4 |
| basx700 toSci "NaN" -> NaN |
| basx701 toSci "nan" -> NaN |
| basx702 toSci "nAn" -> NaN |
| basx703 toSci "NAN" -> NaN |
| basx704 toSci "+NaN" -> NaN |
| basx705 toSci "+nan" -> NaN |
| basx706 toSci "+nAn" -> NaN |
| basx707 toSci "+NAN" -> NaN |
| basx708 toSci "-NaN" -> -NaN |
| basx709 toSci "-nan" -> -NaN |
| basx710 toSci "-nAn" -> -NaN |
| basx711 toSci "-NAN" -> -NaN |
| basx712 toSci 'NaN0' -> NaN |
| basx713 toSci 'NaN1' -> NaN1 |
| basx714 toSci 'NaN12' -> NaN12 |
| basx715 toSci 'NaN123' -> NaN123 |
| basx716 toSci 'NaN1234' -> NaN1234 |
| basx717 toSci 'NaN01' -> NaN1 |
| basx718 toSci 'NaN012' -> NaN12 |
| basx719 toSci 'NaN0123' -> NaN123 |
| basx720 toSci 'NaN01234' -> NaN1234 |
| basx721 toSci 'NaN001' -> NaN1 |
| basx722 toSci 'NaN0012' -> NaN12 |
| basx723 toSci 'NaN00123' -> NaN123 |
| basx724 toSci 'NaN001234' -> NaN1234 |
| basx725 toSci 'NaN12345' -> NaN Conversion_syntax |
| basx726 toSci 'NaN123e+1' -> NaN Conversion_syntax |
| basx727 toSci 'NaN12.45' -> NaN Conversion_syntax |
| basx728 toSci 'NaN-12' -> NaN Conversion_syntax |
| basx729 toSci 'NaN+12' -> NaN Conversion_syntax |
| |
| basx730 toSci "sNaN" -> sNaN |
| basx731 toSci "snan" -> sNaN |
| basx732 toSci "SnAn" -> sNaN |
| basx733 toSci "SNAN" -> sNaN |
| basx734 toSci "+sNaN" -> sNaN |
| basx735 toSci "+snan" -> sNaN |
| basx736 toSci "+SnAn" -> sNaN |
| basx737 toSci "+SNAN" -> sNaN |
| basx738 toSci "-sNaN" -> -sNaN |
| basx739 toSci "-snan" -> -sNaN |
| basx740 toSci "-SnAn" -> -sNaN |
| basx741 toSci "-SNAN" -> -sNaN |
| basx742 toSci 'sNaN0000' -> sNaN |
| basx743 toSci 'sNaN7' -> sNaN7 |
| basx744 toSci 'sNaN007234' -> sNaN7234 |
| basx745 toSci 'sNaN72345' -> NaN Conversion_syntax |
| basx746 toSci 'sNaN72.45' -> NaN Conversion_syntax |
| basx747 toSci 'sNaN-72' -> NaN Conversion_syntax |
| |
| basx748 toSci "Inf" -> Infinity |
| basx749 toSci "inf" -> Infinity |
| basx750 toSci "iNf" -> Infinity |
| basx751 toSci "INF" -> Infinity |
| basx752 toSci "+Inf" -> Infinity |
| basx753 toSci "+inf" -> Infinity |
| basx754 toSci "+iNf" -> Infinity |
| basx755 toSci "+INF" -> Infinity |
| basx756 toSci "-Inf" -> -Infinity |
| basx757 toSci "-inf" -> -Infinity |
| basx758 toSci "-iNf" -> -Infinity |
| basx759 toSci "-INF" -> -Infinity |
| |
| basx760 toSci "Infinity" -> Infinity |
| basx761 toSci "infinity" -> Infinity |
| basx762 toSci "iNfInItY" -> Infinity |
| basx763 toSci "INFINITY" -> Infinity |
| basx764 toSci "+Infinity" -> Infinity |
| basx765 toSci "+infinity" -> Infinity |
| basx766 toSci "+iNfInItY" -> Infinity |
| basx767 toSci "+INFINITY" -> Infinity |
| basx768 toSci "-Infinity" -> -Infinity |
| basx769 toSci "-infinity" -> -Infinity |
| basx770 toSci "-iNfInItY" -> -Infinity |
| basx771 toSci "-INFINITY" -> -Infinity |
| |
| -- Specials and zeros for toEng |
| basx772 toEng "NaN" -> NaN |
| basx773 toEng "-Infinity" -> -Infinity |
| basx774 toEng "-sNaN" -> -sNaN |
| basx775 toEng "-NaN" -> -NaN |
| basx776 toEng "+Infinity" -> Infinity |
| basx778 toEng "+sNaN" -> sNaN |
| basx779 toEng "+NaN" -> NaN |
| basx780 toEng "INFINITY" -> Infinity |
| basx781 toEng "SNAN" -> sNaN |
| basx782 toEng "NAN" -> NaN |
| basx783 toEng "infinity" -> Infinity |
| basx784 toEng "snan" -> sNaN |
| basx785 toEng "nan" -> NaN |
| basx786 toEng "InFINITY" -> Infinity |
| basx787 toEng "SnAN" -> sNaN |
| basx788 toEng "nAN" -> NaN |
| basx789 toEng "iNfinity" -> Infinity |
| basx790 toEng "sNan" -> sNaN |
| basx791 toEng "Nan" -> NaN |
| basx792 toEng "Infinity" -> Infinity |
| basx793 toEng "sNaN" -> sNaN |
| |
| -- Zero toEng, etc. |
| basx800 toEng 0e+1 -> "0.00E+3" -- doc example |
| |
| basx801 toEng 0.000000000 -> 0E-9 |
| basx802 toEng 0.00000000 -> 0.00E-6 |
| basx803 toEng 0.0000000 -> 0.0E-6 |
| basx804 toEng 0.000000 -> 0.000000 |
| basx805 toEng 0.00000 -> 0.00000 |
| basx806 toEng 0.0000 -> 0.0000 |
| basx807 toEng 0.000 -> 0.000 |
| basx808 toEng 0.00 -> 0.00 |
| basx809 toEng 0.0 -> 0.0 |
| basx810 toEng .0 -> 0.0 |
| basx811 toEng 0. -> 0 |
| basx812 toEng -.0 -> -0.0 |
| basx813 toEng -0. -> -0 |
| basx814 toEng -0.0 -> -0.0 |
| basx815 toEng -0.00 -> -0.00 |
| basx816 toEng -0.000 -> -0.000 |
| basx817 toEng -0.0000 -> -0.0000 |
| basx818 toEng -0.00000 -> -0.00000 |
| basx819 toEng -0.000000 -> -0.000000 |
| basx820 toEng -0.0000000 -> -0.0E-6 |
| basx821 toEng -0.00000000 -> -0.00E-6 |
| basx822 toEng -0.000000000 -> -0E-9 |
| |
| basx830 toEng 0.00E+0 -> 0.00 |
| basx831 toEng 0.00E+1 -> 0.0 |
| basx832 toEng 0.00E+2 -> 0 |
| basx833 toEng 0.00E+3 -> 0.00E+3 |
| basx834 toEng 0.00E+4 -> 0.0E+3 |
| basx835 toEng 0.00E+5 -> 0E+3 |
| basx836 toEng 0.00E+6 -> 0.00E+6 |
| basx837 toEng 0.00E+7 -> 0.0E+6 |
| basx838 toEng 0.00E+8 -> 0E+6 |
| basx839 toEng 0.00E+9 -> 0.00E+9 |
| |
| basx840 toEng 0.0E+0 -> 0.0 |
| basx841 toEng 0.0E+1 -> 0 |
| basx842 toEng 0.0E+2 -> 0.00E+3 |
| basx843 toEng 0.0E+3 -> 0.0E+3 |
| basx844 toEng 0.0E+4 -> 0E+3 |
| basx845 toEng 0.0E+5 -> 0.00E+6 |
| basx846 toEng 0.0E+6 -> 0.0E+6 |
| basx847 toEng 0.0E+7 -> 0E+6 |
| basx848 toEng 0.0E+8 -> 0.00E+9 |
| basx849 toEng 0.0E+9 -> 0.0E+9 |
| |
| basx850 toEng 0E+0 -> 0 |
| basx851 toEng 0E+1 -> 0.00E+3 |
| basx852 toEng 0E+2 -> 0.0E+3 |
| basx853 toEng 0E+3 -> 0E+3 |
| basx854 toEng 0E+4 -> 0.00E+6 |
| basx855 toEng 0E+5 -> 0.0E+6 |
| basx856 toEng 0E+6 -> 0E+6 |
| basx857 toEng 0E+7 -> 0.00E+9 |
| basx858 toEng 0E+8 -> 0.0E+9 |
| basx859 toEng 0E+9 -> 0E+9 |
| |
| basx860 toEng 0.0E-0 -> 0.0 |
| basx861 toEng 0.0E-1 -> 0.00 |
| basx862 toEng 0.0E-2 -> 0.000 |
| basx863 toEng 0.0E-3 -> 0.0000 |
| basx864 toEng 0.0E-4 -> 0.00000 |
| basx865 toEng 0.0E-5 -> 0.000000 |
| basx866 toEng 0.0E-6 -> 0.0E-6 |
| basx867 toEng 0.0E-7 -> 0.00E-6 |
| basx868 toEng 0.0E-8 -> 0E-9 |
| basx869 toEng 0.0E-9 -> 0.0E-9 |
| |
| basx870 toEng 0.00E-0 -> 0.00 |
| basx871 toEng 0.00E-1 -> 0.000 |
| basx872 toEng 0.00E-2 -> 0.0000 |
| basx873 toEng 0.00E-3 -> 0.00000 |
| basx874 toEng 0.00E-4 -> 0.000000 |
| basx875 toEng 0.00E-5 -> 0.0E-6 |
| basx876 toEng 0.00E-6 -> 0.00E-6 |
| basx877 toEng 0.00E-7 -> 0E-9 |
| basx878 toEng 0.00E-8 -> 0.0E-9 |
| basx879 toEng 0.00E-9 -> 0.00E-9 |
| |
| |
| rounding: half_up |
| precision: 9 |
| -- subnormals and overflows |
| basx906 toSci '99e999999999' -> Infinity Overflow Inexact Rounded |
| basx907 toSci '999e999999999' -> Infinity Overflow Inexact Rounded |
| basx908 toSci '0.9e-999999999' -> 9E-1000000000 Subnormal |
| basx909 toSci '0.09e-999999999' -> 9E-1000000001 Subnormal |
| basx910 toSci '0.1e1000000000' -> 1E+999999999 |
| basx911 toSci '10e-1000000000' -> 1.0E-999999999 |
| basx912 toSci '0.9e9999999999' -> Infinity Overflow Inexact Rounded |
| basx913 toSci '99e-9999999999' -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| basx914 toSci '111e9999999999' -> Infinity Overflow Inexact Rounded |
| basx915 toSci '1111e-9999999999' -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| basx916 toSci '1111e-99999999999' -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| basx917 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
| -- negatives the same |
| basx918 toSci '-99e999999999' -> -Infinity Overflow Inexact Rounded |
| basx919 toSci '-999e999999999' -> -Infinity Overflow Inexact Rounded |
| basx920 toSci '-0.9e-999999999' -> -9E-1000000000 Subnormal |
| basx921 toSci '-0.09e-999999999' -> -9E-1000000001 Subnormal |
| basx922 toSci '-0.1e1000000000' -> -1E+999999999 |
| basx923 toSci '-10e-1000000000' -> -1.0E-999999999 |
| basx924 toSci '-0.9e9999999999' -> -Infinity Overflow Inexact Rounded |
| basx925 toSci '-99e-9999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| basx926 toSci '-111e9999999999' -> -Infinity Overflow Inexact Rounded |
| basx927 toSci '-1111e-9999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| basx928 toSci '-1111e-99999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| basx929 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
| |
| rounding: ceiling |
| basx930 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
| basx931 toSci '-7e1000000000' -> -9.99999999E+999999999 Overflow Inexact Rounded |
| rounding: up |
| basx932 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
| basx933 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
| rounding: down |
| basx934 toSci '7e1000000000' -> 9.99999999E+999999999 Overflow Inexact Rounded |
| basx935 toSci '-7e1000000000' -> -9.99999999E+999999999 Overflow Inexact Rounded |
| rounding: floor |
| basx936 toSci '7e1000000000' -> 9.99999999E+999999999 Overflow Inexact Rounded |
| basx937 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
| |
| rounding: half_up |
| basx938 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
| basx939 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
| rounding: half_even |
| basx940 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
| basx941 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
| rounding: half_down |
| basx942 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
| basx943 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
| |
| rounding: half_even |
| |
| |
| -- Giga exponent initial tests |
| maxExponent: 999999999 |
| minExponent: -999999999 |
| |
| basx951 toSci '99e999' -> '9.9E+1000' |
| basx952 toSci '999e999' -> '9.99E+1001' |
| basx953 toSci '0.9e-999' -> '9E-1000' |
| basx954 toSci '0.09e-999' -> '9E-1001' |
| basx955 toSci '0.1e1001' -> '1E+1000' |
| basx956 toSci '10e-1001' -> '1.0E-1000' |
| basx957 toSci '0.9e9999' -> '9E+9998' |
| basx958 toSci '99e-9999' -> '9.9E-9998' |
| basx959 toSci '111e9997' -> '1.11E+9999' |
| basx960 toSci '1111e-9999' -> '1.111E-9996' |
| basx961 toSci '99e9999' -> '9.9E+10000' |
| basx962 toSci '999e9999' -> '9.99E+10001' |
| basx963 toSci '0.9e-9999' -> '9E-10000' |
| basx964 toSci '0.09e-9999' -> '9E-10001' |
| basx965 toSci '0.1e10001' -> '1E+10000' |
| basx966 toSci '10e-10001' -> '1.0E-10000' |
| basx967 toSci '0.9e99999' -> '9E+99998' |
| basx968 toSci '99e-99999' -> '9.9E-99998' |
| basx969 toSci '111e99999' -> '1.11E+100001' |
| basx970 toSci '1111e-99999' -> '1.111E-99996' |
| basx971 toSci "0.09e999999999" -> '9E+999999997' |
| basx972 toSci "0.9e999999999" -> '9E+999999998' |
| basx973 toSci "9e999999999" -> '9E+999999999' |
| basx974 toSci "9.9e999999999" -> '9.9E+999999999' |
| basx975 toSci "9.99e999999999" -> '9.99E+999999999' |
| basx976 toSci "9.99e-999999999" -> '9.99E-999999999' |
| basx977 toSci "9.9e-999999999" -> '9.9E-999999999' |
| basx978 toSci "9e-999999999" -> '9E-999999999' |
| basx979 toSci "99e-999999999" -> '9.9E-999999998' |
| basx980 toSci "999e-999999999" -> '9.99E-999999997' |
| |
| -- Varying exponent maximums |
| precision: 5 |
| maxexponent: 0 |
| minexponent: 0 |
| emax001 toSci -1E+2 -> -Infinity Overflow Inexact Rounded |
| emax002 toSci -100 -> -Infinity Overflow Inexact Rounded |
| emax003 toSci -10 -> -Infinity 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 -> Infinity Overflow Inexact Rounded |
| emax012 toSci 100 -> Infinity Overflow Inexact Rounded |
| emax013 toSci 1E+2 -> Infinity Overflow Inexact Rounded |
| emax014 toSci 0.99 -> 0.99 Subnormal |
| emax015 toSci 0.1 -> 0.1 Subnormal |
| emax016 toSci 0.01 -> 0.01 Subnormal |
| emax017 toSci 1E-1 -> 0.1 Subnormal |
| emax018 toSci 1E-2 -> 0.01 Subnormal |
| |
| maxexponent: 1 |
| minexponent: -1 |
| emax100 toSci -1E+3 -> -Infinity Overflow Inexact Rounded |
| emax101 toSci -1E+2 -> -Infinity Overflow Inexact Rounded |
| emax102 toSci -100 -> -Infinity 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 -> Infinity Overflow Inexact Rounded |
| emax113 toSci 1E+2 -> Infinity Overflow Inexact Rounded |
| emax114 toSci 1E+3 -> Infinity Overflow Inexact Rounded |
| emax115 toSci 0.99 -> 0.99 |
| emax116 toSci 0.1 -> 0.1 |
| emax117 toSci 0.01 -> 0.01 Subnormal |
| emax118 toSci 1E-1 -> 0.1 |
| emax119 toSci 1E-2 -> 0.01 Subnormal |
| emax120 toSci 1E-3 -> 0.001 Subnormal |
| emax121 toSci 1.1E-3 -> 0.0011 Subnormal |
| emax122 toSci 1.11E-3 -> 0.00111 Subnormal |
| emax123 toSci 1.111E-3 -> 0.00111 Subnormal Underflow Inexact Rounded |
| emax124 toSci 1.1111E-3 -> 0.00111 Subnormal Underflow Inexact Rounded |
| emax125 toSci 1.11111E-3 -> 0.00111 Subnormal Underflow Inexact Rounded |
| |
| maxexponent: 2 |
| minexponent: -2 |
| precision: 9 |
| emax200 toSci -1E+3 -> -Infinity 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 -> Infinity 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 -> 0.001 Subnormal |
| emax219 toSci 1E-1 -> 0.1 |
| emax220 toSci 1E-2 -> 0.01 |
| emax221 toSci 1E-3 -> 0.001 Subnormal |
| emax222 toSci 1E-4 -> 0.0001 Subnormal |
| emax223 toSci 1E-5 -> 0.00001 Subnormal |
| emax224 toSci 1E-6 -> 0.000001 Subnormal |
| emax225 toSci 1E-7 -> 1E-7 Subnormal |
| emax226 toSci 1E-8 -> 1E-8 Subnormal |
| emax227 toSci 1E-9 -> 1E-9 Subnormal |
| emax228 toSci 1E-10 -> 1E-10 Subnormal |
| emax229 toSci 1E-11 -> 0E-10 Underflow Subnormal Inexact Rounded Clamped |
| emax230 toSci 1E-12 -> 0E-10 Underflow Subnormal Inexact Rounded Clamped |
| |
| maxexponent: 7 |
| minexponent: -7 |
| emax231 toSci 1E-8 -> 1E-8 Subnormal |
| 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 -> Infinity Overflow Inexact Rounded |
| |
| maxexponent: 9 |
| minexponent: -9 |
| emax240 toSci 1E-21 -> 0E-17 Subnormal Underflow Inexact Rounded Clamped |
| emax241 toSci 1E-10 -> 1E-10 Subnormal |
| 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 -> Infinity Overflow Inexact Rounded |
| |
| maxexponent: 10 -- boundary |
| minexponent: -10 |
| emax250 toSci 1E-21 -> 0E-18 Underflow Subnormal Inexact Rounded Clamped |
| emax251 toSci 1E-11 -> 1E-11 Subnormal |
| 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 -> Infinity Overflow Inexact Rounded |
| |
| emax260 toSci 1.00E-21 -> 0E-18 Underflow Subnormal Inexact Rounded Clamped |
| emax261 toSci 1.00E-11 -> 1.00E-11 Subnormal |
| 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 -> Infinity Overflow Inexact Rounded |
| emax270 toSci 9.99E-21 -> 0E-18 Underflow Subnormal Inexact Rounded Clamped |
| emax271 toSci 9.99E-11 -> 9.99E-11 Subnormal |
| 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 -> Infinity Overflow Inexact Rounded |
| |
| maxexponent: 99 |
| minexponent: -99 |
| emax280 toSci 1E-120 -> 0E-107 Underflow Subnormal Inexact Rounded Clamped |
| emax281 toSci 1E-100 -> 1E-100 Subnormal |
| 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 -> Infinity Overflow Inexact Rounded |
| |
| maxexponent: 999 |
| minexponent: -999 |
| emax291 toSci 1E-1000 -> 1E-1000 Subnormal |
| emax292 toSci 1E-999 -> 1E-999 |
| emax293 toSci 1E+999 -> 1E+999 |
| emax294 toSci 1E+1000 -> Infinity Overflow Inexact Rounded |
| maxexponent: 9999 |
| minexponent: -9999 |
| emax301 toSci 1E-10000 -> 1E-10000 Subnormal |
| emax302 toSci 1E-9999 -> 1E-9999 |
| emax303 toSci 1E+9999 -> 1E+9999 |
| emax304 toSci 1E+10000 -> Infinity Overflow Inexact Rounded |
| maxexponent: 99999 |
| minexponent: -99999 |
| emax311 toSci 1E-100000 -> 1E-100000 Subnormal |
| emax312 toSci 1E-99999 -> 1E-99999 |
| emax313 toSci 1E+99999 -> 1E+99999 |
| emax314 toSci 1E+100000 -> Infinity Overflow Inexact Rounded |
| maxexponent: 999999 |
| minexponent: -999999 |
| emax321 toSci 1E-1000000 -> 1E-1000000 Subnormal |
| emax322 toSci 1E-999999 -> 1E-999999 |
| emax323 toSci 1E+999999 -> 1E+999999 |
| emax324 toSci 1E+1000000 -> Infinity Overflow Inexact Rounded |
| maxexponent: 9999999 |
| minexponent: -9999999 |
| emax331 toSci 1E-10000000 -> 1E-10000000 Subnormal |
| emax332 toSci 1E-9999999 -> 1E-9999999 |
| emax333 toSci 1E+9999999 -> 1E+9999999 |
| emax334 toSci 1E+10000000 -> Infinity Overflow Inexact Rounded |
| maxexponent: 99999999 |
| minexponent: -99999999 |
| emax341 toSci 1E-100000000 -> 1E-100000000 Subnormal |
| emax342 toSci 1E-99999999 -> 1E-99999999 |
| emax343 toSci 1E+99999999 -> 1E+99999999 |
| emax344 toSci 1E+100000000 -> Infinity Overflow Inexact Rounded |
| |
| maxexponent: 999999999 |
| minexponent: -999999999 |
| emax347 toSci 1E-1000000008 -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| emax348 toSci 1E-1000000007 -> 1E-1000000007 Subnormal |
| emax349 toSci 1E-1000000000 -> 1E-1000000000 Subnormal |
| emax350 toSci 1E-999999999 -> 1E-999999999 |
| emax351 toSci 1E+999999999 -> 1E+999999999 |
| emax352 toSci 1E+1000000000 -> Infinity Overflow Inexact Rounded |
| emax353 toSci 1.000E-1000000000 -> 1.000E-1000000000 Subnormal |
| emax354 toSci 1.000E-999999999 -> 1.000E-999999999 |
| emax355 toSci 1.000E+999999999 -> 1.000E+999999999 |
| emax356 toSci 1.000E+1000000000 -> Infinity Overflow Inexact Rounded |
| emax357 toSci 1.001E-1000000008 -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| emax358 toSci 1.001E-1000000007 -> 1E-1000000007 Subnormal Inexact Rounded Underflow |
| emax359 toSci 1.001E-1000000000 -> 1.001E-1000000000 Subnormal |
| emax360 toSci 1.001E-999999999 -> 1.001E-999999999 |
| emax361 toSci 1.001E+999999999 -> 1.001E+999999999 |
| emax362 toSci 1.001E+1000000000 -> Infinity Overflow Inexact Rounded |
| emax363 toSci 9.000E-1000000000 -> 9.000E-1000000000 Subnormal |
| emax364 toSci 9.000E-999999999 -> 9.000E-999999999 |
| emax365 toSci 9.000E+999999999 -> 9.000E+999999999 |
| emax366 toSci 9.000E+1000000000 -> Infinity Overflow Inexact Rounded |
| emax367 toSci 9.999E-1000000009 -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| emax368 toSci 9.999E-1000000008 -> 1E-1000000007 Underflow Subnormal Inexact Rounded |
| emax369 toSci 9.999E-1000000007 -> 1.0E-1000000006 Underflow Subnormal Inexact Rounded |
| emax370 toSci 9.999E-1000000000 -> 9.999E-1000000000 Subnormal |
| emax371 toSci 9.999E-999999999 -> 9.999E-999999999 |
| emax372 toSci 9.999E+999999999 -> 9.999E+999999999 |
| |
| emax373 toSci 9.999E+1000000000 -> Infinity Overflow Inexact Rounded |
| emax374 toSci -1E-1000000000 -> -1E-1000000000 Subnormal |
| emax375 toSci -1E-999999999 -> -1E-999999999 |
| emax376 toSci -1E+999999999 -> -1E+999999999 |
| emax377 toSci -1E+1000000000 -> -Infinity Overflow Inexact Rounded |
| emax378 toSci -1.000E-1000000000 -> -1.000E-1000000000 Subnormal |
| emax379 toSci -1.000E-999999999 -> -1.000E-999999999 |
| emax380 toSci -1.000E+999999999 -> -1.000E+999999999 |
| emax381 toSci -1.000E+1000000000 -> -Infinity Overflow Inexact Rounded |
| emax382 toSci -1.001E-1000000008 -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| emax383 toSci -1.001E-999999999 -> -1.001E-999999999 |
| emax384 toSci -1.001E+999999999 -> -1.001E+999999999 |
| emax385 toSci -1.001E+1000000000 -> -Infinity Overflow Inexact Rounded |
| emax386 toSci -9.000E-1000000123 -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
| emax387 toSci -9.000E-999999999 -> -9.000E-999999999 |
| emax388 toSci -9.000E+999999999 -> -9.000E+999999999 |
| emax389 toSci -9.000E+1000000000 -> -Infinity Overflow Inexact Rounded |
| emax390 toSci -9.999E-1000000008 -> -1E-1000000007 Underflow Subnormal Inexact Rounded |
| emax391 toSci -9.999E-999999999 -> -9.999E-999999999 |
| emax392 toSci -9.999E+999999999 -> -9.999E+999999999 |
| emax393 toSci -9.999E+1000000000 -> -Infinity Overflow Inexact Rounded |
| |
| -- Now check 854 rounding of subnormals and proper underflow to 0 |
| precision: 5 |
| maxExponent: 999 |
| minexponent: -999 |
| rounding: half_even |
| |
| emax400 toSci 1.0000E-999 -> 1.0000E-999 |
| emax401 toSci 0.1E-999 -> 1E-1000 Subnormal |
| emax402 toSci 0.1000E-999 -> 1.000E-1000 Subnormal |
| emax403 toSci 0.0100E-999 -> 1.00E-1001 Subnormal |
| emax404 toSci 0.0010E-999 -> 1.0E-1002 Subnormal |
| emax405 toSci 0.0001E-999 -> 1E-1003 Subnormal |
| emax406 toSci 0.00010E-999 -> 1E-1003 Subnormal Rounded |
| emax407 toSci 0.00013E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
| emax408 toSci 0.00015E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax409 toSci 0.00017E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax410 toSci 0.00023E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax411 toSci 0.00025E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax412 toSci 0.00027E-999 -> 3E-1003 Underflow Subnormal Inexact Rounded |
| emax413 toSci 0.000149E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
| emax414 toSci 0.000150E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax415 toSci 0.000151E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax416 toSci 0.000249E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax417 toSci 0.000250E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
| emax418 toSci 0.000251E-999 -> 3E-1003 Underflow Subnormal Inexact Rounded |
| emax419 toSci 0.00009E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
| emax420 toSci 0.00005E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| emax421 toSci 0.00003E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| emax422 toSci 0.000009E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| emax423 toSci 0.000005E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| emax424 toSci 0.000003E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| |
| emax425 toSci 0.001049E-999 -> 1.0E-1002 Underflow Subnormal Inexact Rounded |
| emax426 toSci 0.001050E-999 -> 1.0E-1002 Underflow Subnormal Inexact Rounded |
| emax427 toSci 0.001051E-999 -> 1.1E-1002 Underflow Subnormal Inexact Rounded |
| emax428 toSci 0.001149E-999 -> 1.1E-1002 Underflow Subnormal Inexact Rounded |
| emax429 toSci 0.001150E-999 -> 1.2E-1002 Underflow Subnormal Inexact Rounded |
| emax430 toSci 0.001151E-999 -> 1.2E-1002 Underflow Subnormal Inexact Rounded |
| |
| emax432 toSci 0.010049E-999 -> 1.00E-1001 Underflow Subnormal Inexact Rounded |
| emax433 toSci 0.010050E-999 -> 1.00E-1001 Underflow Subnormal Inexact Rounded |
| emax434 toSci 0.010051E-999 -> 1.01E-1001 Underflow Subnormal Inexact Rounded |
| emax435 toSci 0.010149E-999 -> 1.01E-1001 Underflow Subnormal Inexact Rounded |
| emax436 toSci 0.010150E-999 -> 1.02E-1001 Underflow Subnormal Inexact Rounded |
| emax437 toSci 0.010151E-999 -> 1.02E-1001 Underflow Subnormal Inexact Rounded |
| |
| emax440 toSci 0.10103E-999 -> 1.010E-1000 Underflow Subnormal Inexact Rounded |
| emax441 toSci 0.10105E-999 -> 1.010E-1000 Underflow Subnormal Inexact Rounded |
| emax442 toSci 0.10107E-999 -> 1.011E-1000 Underflow Subnormal Inexact Rounded |
| emax443 toSci 0.10113E-999 -> 1.011E-1000 Underflow Subnormal Inexact Rounded |
| emax444 toSci 0.10115E-999 -> 1.012E-1000 Underflow Subnormal Inexact Rounded |
| emax445 toSci 0.10117E-999 -> 1.012E-1000 Underflow Subnormal Inexact Rounded |
| |
| emax450 toSci 1.10730E-1000 -> 1.107E-1000 Underflow Subnormal Inexact Rounded |
| emax451 toSci 1.10750E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
| emax452 toSci 1.10770E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
| emax453 toSci 1.10830E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
| emax454 toSci 1.10850E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
| emax455 toSci 1.10870E-1000 -> 1.109E-1000 Underflow Subnormal Inexact Rounded |
| |
| -- make sure sign OK |
| emax456 toSci -0.10103E-999 -> -1.010E-1000 Underflow Subnormal Inexact Rounded |
| emax457 toSci -0.10105E-999 -> -1.010E-1000 Underflow Subnormal Inexact Rounded |
| emax458 toSci -0.10107E-999 -> -1.011E-1000 Underflow Subnormal Inexact Rounded |
| emax459 toSci -0.10113E-999 -> -1.011E-1000 Underflow Subnormal Inexact Rounded |
| emax460 toSci -0.10115E-999 -> -1.012E-1000 Underflow Subnormal Inexact Rounded |
| emax461 toSci -0.10117E-999 -> -1.012E-1000 Underflow Subnormal Inexact Rounded |
| |
| -- '999s' cases |
| emax464 toSci 999999E-999 -> 1.0000E-993 Inexact Rounded |
| emax465 toSci 99999.0E-999 -> 9.9999E-995 Rounded |
| emax466 toSci 99999.E-999 -> 9.9999E-995 |
| emax467 toSci 9999.9E-999 -> 9.9999E-996 |
| emax468 toSci 999.99E-999 -> 9.9999E-997 |
| emax469 toSci 99.999E-999 -> 9.9999E-998 |
| emax470 toSci 9.9999E-999 -> 9.9999E-999 |
| emax471 toSci 0.99999E-999 -> 1.0000E-999 Underflow Subnormal Inexact Rounded |
| emax472 toSci 0.099999E-999 -> 1.000E-1000 Underflow Subnormal Inexact Rounded |
| emax473 toSci 0.0099999E-999 -> 1.00E-1001 Underflow Subnormal Inexact Rounded |
| emax474 toSci 0.00099999E-999 -> 1.0E-1002 Underflow Subnormal Inexact Rounded |
| emax475 toSci 0.000099999E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
| emax476 toSci 0.0000099999E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| emax477 toSci 0.00000099999E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| emax478 toSci 0.000000099999E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
| |
| -- Exponents with insignificant leading zeros |
| precision: 16 |
| maxExponent: 999999999 |
| minexponent: -999999999 |
| basx1001 toSci 1e999999999 -> 1E+999999999 |
| basx1002 toSci 1e0999999999 -> 1E+999999999 |
| basx1003 toSci 1e00999999999 -> 1E+999999999 |
| basx1004 toSci 1e000999999999 -> 1E+999999999 |
| basx1005 toSci 1e000000000000999999999 -> 1E+999999999 |
| basx1006 toSci 1e000000000001000000007 -> Infinity Overflow Inexact Rounded |
| basx1007 toSci 1e-999999999 -> 1E-999999999 |
| basx1008 toSci 1e-0999999999 -> 1E-999999999 |
| basx1009 toSci 1e-00999999999 -> 1E-999999999 |
| basx1010 toSci 1e-000999999999 -> 1E-999999999 |
| basx1011 toSci 1e-000000000000999999999 -> 1E-999999999 |
| basx1012 toSci 1e-000000000001000000007 -> 1E-1000000007 Subnormal |
| |
| -- Edge cases for int32 exponents... |
| basx1021 tosci 1e+2147483649 -> Infinity Overflow Inexact Rounded |
| basx1022 tosci 1e+2147483648 -> Infinity Overflow Inexact Rounded |
| basx1023 tosci 1e+2147483647 -> Infinity Overflow Inexact Rounded |
| basx1024 tosci 1e-2147483647 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped |
| basx1025 tosci 1e-2147483648 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped |
| basx1026 tosci 1e-2147483649 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped |
| -- same unbalanced |
| precision: 7 |
| maxExponent: 96 |
| minexponent: -95 |
| basx1031 tosci 1e+2147483649 -> Infinity Overflow Inexact Rounded |
| basx1032 tosci 1e+2147483648 -> Infinity Overflow Inexact Rounded |
| basx1033 tosci 1e+2147483647 -> Infinity Overflow Inexact Rounded |
| basx1034 tosci 1e-2147483647 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped |
| basx1035 tosci 1e-2147483648 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped |
| basx1036 tosci 1e-2147483649 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped |
| |
| -- check for double-rounded subnormals |
| precision: 5 |
| maxexponent: 79 |
| minexponent: -79 |
| basx1041 toSci 1.52444E-80 -> 1.524E-80 Inexact Rounded Subnormal Underflow |
| basx1042 toSci 1.52445E-80 -> 1.524E-80 Inexact Rounded Subnormal Underflow |
| basx1043 toSci 1.52446E-80 -> 1.524E-80 Inexact Rounded Subnormal Underflow |
| |
| -- clamped zeros [see also clamp.decTest] |
| precision: 34 |
| maxExponent: 6144 |
| minExponent: -6143 |
| |
| basx1061 apply 0e+10000 -> 0E+6144 Clamped |
| basx1062 apply 0e-10000 -> 0E-6176 Clamped |
| basx1063 apply -0e+10000 -> -0E+6144 Clamped |
| basx1064 apply -0e-10000 -> -0E-6176 Clamped |
| |
| precision: 16 |
| maxExponent: 384 |
| minExponent: -383 |
| |
| basx1065 apply 0e+10000 -> 0E+384 Clamped |
| basx1066 apply 0e-10000 -> 0E-398 Clamped |
| basx1067 apply -0e+10000 -> -0E+384 Clamped |
| basx1068 apply -0e-10000 -> -0E-398 Clamped |
| |
| -- same with IEEE clamping |
| clamp: 1 |
| |
| precision: 34 |
| maxExponent: 6144 |
| minExponent: -6143 |
| |
| basx1071 apply 0e+10000 -> 0E+6111 Clamped |
| basx1072 apply 0e-10000 -> 0E-6176 Clamped |
| basx1073 apply -0e+10000 -> -0E+6111 Clamped |
| basx1074 apply -0e-10000 -> -0E-6176 Clamped |
| |
| precision: 16 |
| maxExponent: 384 |
| minExponent: -383 |
| |
| basx1075 apply 0e+10000 -> 0E+369 Clamped |
| basx1076 apply 0e-10000 -> 0E-398 Clamped |
| basx1077 apply -0e+10000 -> -0E+369 Clamped |
| basx1078 apply -0e-10000 -> -0E-398 Clamped |
| |
| |