|
1 ------------------------------------------------------------------------ |
|
2 -- base.decTest -- base decimal <--> string conversions -- |
|
3 -- Copyright (c) IBM Corporation, 1981, 2007. All rights reserved. -- |
|
4 ------------------------------------------------------------------------ |
|
5 -- Please see the document "General Decimal Arithmetic Testcases" -- |
|
6 -- at http://www2.hursley.ibm.com/decimal for the description of -- |
|
7 -- these testcases. -- |
|
8 -- -- |
|
9 -- These testcases are experimental ('beta' versions), and they -- |
|
10 -- may contain errors. They are offered on an as-is basis. In -- |
|
11 -- particular, achieving the same results as the tests here is not -- |
|
12 -- a guarantee that an implementation complies with any Standard -- |
|
13 -- or specification. The tests are not exhaustive. -- |
|
14 -- -- |
|
15 -- Please send comments, suggestions, and corrections to the author: -- |
|
16 -- Mike Cowlishaw, IBM Fellow -- |
|
17 -- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK -- |
|
18 -- mfc@uk.ibm.com -- |
|
19 ------------------------------------------------------------------------ |
|
20 version: 2.57 |
|
21 extended: 1 |
|
22 |
|
23 -- This file tests base conversions from string to a decimal number |
|
24 -- and back to a string (in either Scientific or Engineering form) |
|
25 |
|
26 -- Note that unlike other operations the operand is subject to rounding |
|
27 -- to conform to emax and precision settings (that is, numbers will |
|
28 -- conform to rules and exponent will be in permitted range). |
|
29 |
|
30 precision: 16 |
|
31 rounding: half_up |
|
32 maxExponent: 384 |
|
33 minExponent: -383 |
|
34 |
|
35 basx001 toSci 0 -> 0 |
|
36 basx002 toSci 1 -> 1 |
|
37 basx003 toSci 1.0 -> 1.0 |
|
38 basx004 toSci 1.00 -> 1.00 |
|
39 basx005 toSci 10 -> 10 |
|
40 basx006 toSci 1000 -> 1000 |
|
41 basx007 toSci 10.0 -> 10.0 |
|
42 basx008 toSci 10.1 -> 10.1 |
|
43 basx009 toSci 10.4 -> 10.4 |
|
44 basx010 toSci 10.5 -> 10.5 |
|
45 basx011 toSci 10.6 -> 10.6 |
|
46 basx012 toSci 10.9 -> 10.9 |
|
47 basx013 toSci 11.0 -> 11.0 |
|
48 basx014 toSci 1.234 -> 1.234 |
|
49 basx015 toSci 0.123 -> 0.123 |
|
50 basx016 toSci 0.012 -> 0.012 |
|
51 basx017 toSci -0 -> -0 |
|
52 basx018 toSci -0.0 -> -0.0 |
|
53 basx019 toSci -00.00 -> -0.00 |
|
54 |
|
55 basx021 toSci -1 -> -1 |
|
56 basx022 toSci -1.0 -> -1.0 |
|
57 basx023 toSci -0.1 -> -0.1 |
|
58 basx024 toSci -9.1 -> -9.1 |
|
59 basx025 toSci -9.11 -> -9.11 |
|
60 basx026 toSci -9.119 -> -9.119 |
|
61 basx027 toSci -9.999 -> -9.999 |
|
62 |
|
63 basx030 toSci '123456789.123456' -> '123456789.123456' |
|
64 basx031 toSci '123456789.000000' -> '123456789.000000' |
|
65 basx032 toSci '123456789123456' -> '123456789123456' |
|
66 basx033 toSci '0.0000123456789' -> '0.0000123456789' |
|
67 basx034 toSci '0.00000123456789' -> '0.00000123456789' |
|
68 basx035 toSci '0.000000123456789' -> '1.23456789E-7' |
|
69 basx036 toSci '0.0000000123456789' -> '1.23456789E-8' |
|
70 |
|
71 basx037 toSci '0.123456789012344' -> '0.123456789012344' |
|
72 basx038 toSci '0.123456789012345' -> '0.123456789012345' |
|
73 |
|
74 -- String [many more examples are implicitly tested elsewhere] |
|
75 -- strings without E cannot generate E in result |
|
76 basx040 toSci "12" -> '12' |
|
77 basx041 toSci "-76" -> '-76' |
|
78 basx042 toSci "12.76" -> '12.76' |
|
79 basx043 toSci "+12.76" -> '12.76' |
|
80 basx044 toSci "012.76" -> '12.76' |
|
81 basx045 toSci "+0.003" -> '0.003' |
|
82 basx046 toSci "17." -> '17' |
|
83 basx047 toSci ".5" -> '0.5' |
|
84 basx048 toSci "044" -> '44' |
|
85 basx049 toSci "0044" -> '44' |
|
86 basx050 toSci "0.0005" -> '0.0005' |
|
87 basx051 toSci "00.00005" -> '0.00005' |
|
88 basx052 toSci "0.000005" -> '0.000005' |
|
89 basx053 toSci "0.0000050" -> '0.0000050' |
|
90 basx054 toSci "0.0000005" -> '5E-7' |
|
91 basx055 toSci "0.00000005" -> '5E-8' |
|
92 basx056 toSci "12345678.543210" -> '12345678.543210' |
|
93 basx057 toSci "2345678.543210" -> '2345678.543210' |
|
94 basx058 toSci "345678.543210" -> '345678.543210' |
|
95 basx059 toSci "0345678.54321" -> '345678.54321' |
|
96 basx060 toSci "345678.5432" -> '345678.5432' |
|
97 basx061 toSci "+345678.5432" -> '345678.5432' |
|
98 basx062 toSci "+0345678.5432" -> '345678.5432' |
|
99 basx063 toSci "+00345678.5432" -> '345678.5432' |
|
100 basx064 toSci "-345678.5432" -> '-345678.5432' |
|
101 basx065 toSci "-0345678.5432" -> '-345678.5432' |
|
102 basx066 toSci "-00345678.5432" -> '-345678.5432' |
|
103 -- examples |
|
104 basx067 toSci "5E-6" -> '0.000005' |
|
105 basx068 toSci "50E-7" -> '0.0000050' |
|
106 basx069 toSci "5E-7" -> '5E-7' |
|
107 |
|
108 -- [No exotics as no Unicode] |
|
109 |
|
110 -- rounded with dots in all (including edge) places |
|
111 basx071 toSci .1234567890123456123 -> 0.1234567890123456 Inexact Rounded |
|
112 basx072 toSci 1.234567890123456123 -> 1.234567890123456 Inexact Rounded |
|
113 basx073 toSci 12.34567890123456123 -> 12.34567890123456 Inexact Rounded |
|
114 basx074 toSci 123.4567890123456123 -> 123.4567890123456 Inexact Rounded |
|
115 basx075 toSci 1234.567890123456123 -> 1234.567890123456 Inexact Rounded |
|
116 basx076 toSci 12345.67890123456123 -> 12345.67890123456 Inexact Rounded |
|
117 basx077 toSci 123456.7890123456123 -> 123456.7890123456 Inexact Rounded |
|
118 basx078 toSci 1234567.890123456123 -> 1234567.890123456 Inexact Rounded |
|
119 basx079 toSci 12345678.90123456123 -> 12345678.90123456 Inexact Rounded |
|
120 basx080 toSci 123456789.0123456123 -> 123456789.0123456 Inexact Rounded |
|
121 basx081 toSci 1234567890.123456123 -> 1234567890.123456 Inexact Rounded |
|
122 basx082 toSci 12345678901.23456123 -> 12345678901.23456 Inexact Rounded |
|
123 basx083 toSci 123456789012.3456123 -> 123456789012.3456 Inexact Rounded |
|
124 basx084 toSci 1234567890123.456123 -> 1234567890123.456 Inexact Rounded |
|
125 basx085 toSci 12345678901234.56123 -> 12345678901234.56 Inexact Rounded |
|
126 basx086 toSci 123456789012345.6123 -> 123456789012345.6 Inexact Rounded |
|
127 basx087 toSci 1234567890123456.123 -> 1234567890123456 Inexact Rounded |
|
128 basx088 toSci 12345678901234561.23 -> 1.234567890123456E+16 Inexact Rounded |
|
129 basx089 toSci 123456789012345612.3 -> 1.234567890123456E+17 Inexact Rounded |
|
130 basx090 toSci 1234567890123456123. -> 1.234567890123456E+18 Inexact Rounded |
|
131 |
|
132 -- Numbers with E |
|
133 basx130 toSci "0.000E-1" -> '0.0000' |
|
134 basx131 toSci "0.000E-2" -> '0.00000' |
|
135 basx132 toSci "0.000E-3" -> '0.000000' |
|
136 basx133 toSci "0.000E-4" -> '0E-7' |
|
137 basx134 toSci "0.00E-2" -> '0.0000' |
|
138 basx135 toSci "0.00E-3" -> '0.00000' |
|
139 basx136 toSci "0.00E-4" -> '0.000000' |
|
140 basx137 toSci "0.00E-5" -> '0E-7' |
|
141 basx138 toSci "+0E+9" -> '0E+9' |
|
142 basx139 toSci "-0E+9" -> '-0E+9' |
|
143 basx140 toSci "1E+9" -> '1E+9' |
|
144 basx141 toSci "1e+09" -> '1E+9' |
|
145 basx142 toSci "1E+90" -> '1E+90' |
|
146 basx143 toSci "+1E+009" -> '1E+9' |
|
147 basx144 toSci "0E+9" -> '0E+9' |
|
148 basx145 toSci "1E+9" -> '1E+9' |
|
149 basx146 toSci "1E+09" -> '1E+9' |
|
150 basx147 toSci "1e+90" -> '1E+90' |
|
151 basx148 toSci "1E+009" -> '1E+9' |
|
152 basx149 toSci "000E+9" -> '0E+9' |
|
153 basx150 toSci "1E9" -> '1E+9' |
|
154 basx151 toSci "1e09" -> '1E+9' |
|
155 basx152 toSci "1E90" -> '1E+90' |
|
156 basx153 toSci "1E009" -> '1E+9' |
|
157 basx154 toSci "0E9" -> '0E+9' |
|
158 basx155 toSci "0.000e+0" -> '0.000' |
|
159 basx156 toSci "0.000E-1" -> '0.0000' |
|
160 basx157 toSci "4E+9" -> '4E+9' |
|
161 basx158 toSci "44E+9" -> '4.4E+10' |
|
162 basx159 toSci "0.73e-7" -> '7.3E-8' |
|
163 basx160 toSci "00E+9" -> '0E+9' |
|
164 basx161 toSci "00E-9" -> '0E-9' |
|
165 basx162 toSci "10E+9" -> '1.0E+10' |
|
166 basx163 toSci "10E+09" -> '1.0E+10' |
|
167 basx164 toSci "10e+90" -> '1.0E+91' |
|
168 basx165 toSci "10E+009" -> '1.0E+10' |
|
169 basx166 toSci "100e+9" -> '1.00E+11' |
|
170 basx167 toSci "100e+09" -> '1.00E+11' |
|
171 basx168 toSci "100E+90" -> '1.00E+92' |
|
172 basx169 toSci "100e+009" -> '1.00E+11' |
|
173 |
|
174 basx170 toSci "1.265" -> '1.265' |
|
175 basx171 toSci "1.265E-20" -> '1.265E-20' |
|
176 basx172 toSci "1.265E-8" -> '1.265E-8' |
|
177 basx173 toSci "1.265E-4" -> '0.0001265' |
|
178 basx174 toSci "1.265E-3" -> '0.001265' |
|
179 basx175 toSci "1.265E-2" -> '0.01265' |
|
180 basx176 toSci "1.265E-1" -> '0.1265' |
|
181 basx177 toSci "1.265E-0" -> '1.265' |
|
182 basx178 toSci "1.265E+1" -> '12.65' |
|
183 basx179 toSci "1.265E+2" -> '126.5' |
|
184 basx180 toSci "1.265E+3" -> '1265' |
|
185 basx181 toSci "1.265E+4" -> '1.265E+4' |
|
186 basx182 toSci "1.265E+8" -> '1.265E+8' |
|
187 basx183 toSci "1.265E+20" -> '1.265E+20' |
|
188 |
|
189 basx190 toSci "12.65" -> '12.65' |
|
190 basx191 toSci "12.65E-20" -> '1.265E-19' |
|
191 basx192 toSci "12.65E-8" -> '1.265E-7' |
|
192 basx193 toSci "12.65E-4" -> '0.001265' |
|
193 basx194 toSci "12.65E-3" -> '0.01265' |
|
194 basx195 toSci "12.65E-2" -> '0.1265' |
|
195 basx196 toSci "12.65E-1" -> '1.265' |
|
196 basx197 toSci "12.65E-0" -> '12.65' |
|
197 basx198 toSci "12.65E+1" -> '126.5' |
|
198 basx199 toSci "12.65E+2" -> '1265' |
|
199 basx200 toSci "12.65E+3" -> '1.265E+4' |
|
200 basx201 toSci "12.65E+4" -> '1.265E+5' |
|
201 basx202 toSci "12.65E+8" -> '1.265E+9' |
|
202 basx203 toSci "12.65E+20" -> '1.265E+21' |
|
203 |
|
204 basx210 toSci "126.5" -> '126.5' |
|
205 basx211 toSci "126.5E-20" -> '1.265E-18' |
|
206 basx212 toSci "126.5E-8" -> '0.000001265' |
|
207 basx213 toSci "126.5E-4" -> '0.01265' |
|
208 basx214 toSci "126.5E-3" -> '0.1265' |
|
209 basx215 toSci "126.5E-2" -> '1.265' |
|
210 basx216 toSci "126.5E-1" -> '12.65' |
|
211 basx217 toSci "126.5E-0" -> '126.5' |
|
212 basx218 toSci "126.5E+1" -> '1265' |
|
213 basx219 toSci "126.5E+2" -> '1.265E+4' |
|
214 basx220 toSci "126.5E+3" -> '1.265E+5' |
|
215 basx221 toSci "126.5E+4" -> '1.265E+6' |
|
216 basx222 toSci "126.5E+8" -> '1.265E+10' |
|
217 basx223 toSci "126.5E+20" -> '1.265E+22' |
|
218 |
|
219 basx230 toSci "1265" -> '1265' |
|
220 basx231 toSci "1265E-20" -> '1.265E-17' |
|
221 basx232 toSci "1265E-8" -> '0.00001265' |
|
222 basx233 toSci "1265E-4" -> '0.1265' |
|
223 basx234 toSci "1265E-3" -> '1.265' |
|
224 basx235 toSci "1265E-2" -> '12.65' |
|
225 basx236 toSci "1265E-1" -> '126.5' |
|
226 basx237 toSci "1265E-0" -> '1265' |
|
227 basx238 toSci "1265E+1" -> '1.265E+4' |
|
228 basx239 toSci "1265E+2" -> '1.265E+5' |
|
229 basx240 toSci "1265E+3" -> '1.265E+6' |
|
230 basx241 toSci "1265E+4" -> '1.265E+7' |
|
231 basx242 toSci "1265E+8" -> '1.265E+11' |
|
232 basx243 toSci "1265E+20" -> '1.265E+23' |
|
233 |
|
234 basx250 toSci "0.1265" -> '0.1265' |
|
235 basx251 toSci "0.1265E-20" -> '1.265E-21' |
|
236 basx252 toSci "0.1265E-8" -> '1.265E-9' |
|
237 basx253 toSci "0.1265E-4" -> '0.00001265' |
|
238 basx254 toSci "0.1265E-3" -> '0.0001265' |
|
239 basx255 toSci "0.1265E-2" -> '0.001265' |
|
240 basx256 toSci "0.1265E-1" -> '0.01265' |
|
241 basx257 toSci "0.1265E-0" -> '0.1265' |
|
242 basx258 toSci "0.1265E+1" -> '1.265' |
|
243 basx259 toSci "0.1265E+2" -> '12.65' |
|
244 basx260 toSci "0.1265E+3" -> '126.5' |
|
245 basx261 toSci "0.1265E+4" -> '1265' |
|
246 basx262 toSci "0.1265E+8" -> '1.265E+7' |
|
247 basx263 toSci "0.1265E+20" -> '1.265E+19' |
|
248 |
|
249 -- some more negative zeros [systematic tests below] |
|
250 basx290 toSci "-0.000E-1" -> '-0.0000' |
|
251 basx291 toSci "-0.000E-2" -> '-0.00000' |
|
252 basx292 toSci "-0.000E-3" -> '-0.000000' |
|
253 basx293 toSci "-0.000E-4" -> '-0E-7' |
|
254 basx294 toSci "-0.00E-2" -> '-0.0000' |
|
255 basx295 toSci "-0.00E-3" -> '-0.00000' |
|
256 basx296 toSci "-0.0E-2" -> '-0.000' |
|
257 basx297 toSci "-0.0E-3" -> '-0.0000' |
|
258 basx298 toSci "-0E-2" -> '-0.00' |
|
259 basx299 toSci "-0E-3" -> '-0.000' |
|
260 |
|
261 -- Engineering notation tests |
|
262 basx301 toSci 10e12 -> 1.0E+13 |
|
263 basx302 toEng 10e12 -> 10E+12 |
|
264 basx303 toSci 10e11 -> 1.0E+12 |
|
265 basx304 toEng 10e11 -> 1.0E+12 |
|
266 basx305 toSci 10e10 -> 1.0E+11 |
|
267 basx306 toEng 10e10 -> 100E+9 |
|
268 basx307 toSci 10e9 -> 1.0E+10 |
|
269 basx308 toEng 10e9 -> 10E+9 |
|
270 basx309 toSci 10e8 -> 1.0E+9 |
|
271 basx310 toEng 10e8 -> 1.0E+9 |
|
272 basx311 toSci 10e7 -> 1.0E+8 |
|
273 basx312 toEng 10e7 -> 100E+6 |
|
274 basx313 toSci 10e6 -> 1.0E+7 |
|
275 basx314 toEng 10e6 -> 10E+6 |
|
276 basx315 toSci 10e5 -> 1.0E+6 |
|
277 basx316 toEng 10e5 -> 1.0E+6 |
|
278 basx317 toSci 10e4 -> 1.0E+5 |
|
279 basx318 toEng 10e4 -> 100E+3 |
|
280 basx319 toSci 10e3 -> 1.0E+4 |
|
281 basx320 toEng 10e3 -> 10E+3 |
|
282 basx321 toSci 10e2 -> 1.0E+3 |
|
283 basx322 toEng 10e2 -> 1.0E+3 |
|
284 basx323 toSci 10e1 -> 1.0E+2 |
|
285 basx324 toEng 10e1 -> 100 |
|
286 basx325 toSci 10e0 -> 10 |
|
287 basx326 toEng 10e0 -> 10 |
|
288 basx327 toSci 10e-1 -> 1.0 |
|
289 basx328 toEng 10e-1 -> 1.0 |
|
290 basx329 toSci 10e-2 -> 0.10 |
|
291 basx330 toEng 10e-2 -> 0.10 |
|
292 basx331 toSci 10e-3 -> 0.010 |
|
293 basx332 toEng 10e-3 -> 0.010 |
|
294 basx333 toSci 10e-4 -> 0.0010 |
|
295 basx334 toEng 10e-4 -> 0.0010 |
|
296 basx335 toSci 10e-5 -> 0.00010 |
|
297 basx336 toEng 10e-5 -> 0.00010 |
|
298 basx337 toSci 10e-6 -> 0.000010 |
|
299 basx338 toEng 10e-6 -> 0.000010 |
|
300 basx339 toSci 10e-7 -> 0.0000010 |
|
301 basx340 toEng 10e-7 -> 0.0000010 |
|
302 basx341 toSci 10e-8 -> 1.0E-7 |
|
303 basx342 toEng 10e-8 -> 100E-9 |
|
304 basx343 toSci 10e-9 -> 1.0E-8 |
|
305 basx344 toEng 10e-9 -> 10E-9 |
|
306 basx345 toSci 10e-10 -> 1.0E-9 |
|
307 basx346 toEng 10e-10 -> 1.0E-9 |
|
308 basx347 toSci 10e-11 -> 1.0E-10 |
|
309 basx348 toEng 10e-11 -> 100E-12 |
|
310 basx349 toSci 10e-12 -> 1.0E-11 |
|
311 basx350 toEng 10e-12 -> 10E-12 |
|
312 basx351 toSci 10e-13 -> 1.0E-12 |
|
313 basx352 toEng 10e-13 -> 1.0E-12 |
|
314 |
|
315 basx361 toSci 7E12 -> 7E+12 |
|
316 basx362 toEng 7E12 -> 7E+12 |
|
317 basx363 toSci 7E11 -> 7E+11 |
|
318 basx364 toEng 7E11 -> 700E+9 |
|
319 basx365 toSci 7E10 -> 7E+10 |
|
320 basx366 toEng 7E10 -> 70E+9 |
|
321 basx367 toSci 7E9 -> 7E+9 |
|
322 basx368 toEng 7E9 -> 7E+9 |
|
323 basx369 toSci 7E8 -> 7E+8 |
|
324 basx370 toEng 7E8 -> 700E+6 |
|
325 basx371 toSci 7E7 -> 7E+7 |
|
326 basx372 toEng 7E7 -> 70E+6 |
|
327 basx373 toSci 7E6 -> 7E+6 |
|
328 basx374 toEng 7E6 -> 7E+6 |
|
329 basx375 toSci 7E5 -> 7E+5 |
|
330 basx376 toEng 7E5 -> 700E+3 |
|
331 basx377 toSci 7E4 -> 7E+4 |
|
332 basx378 toEng 7E4 -> 70E+3 |
|
333 basx379 toSci 7E3 -> 7E+3 |
|
334 basx380 toEng 7E3 -> 7E+3 |
|
335 basx381 toSci 7E2 -> 7E+2 |
|
336 basx382 toEng 7E2 -> 700 |
|
337 basx383 toSci 7E1 -> 7E+1 |
|
338 basx384 toEng 7E1 -> 70 |
|
339 basx385 toSci 7E0 -> 7 |
|
340 basx386 toEng 7E0 -> 7 |
|
341 basx387 toSci 7E-1 -> 0.7 |
|
342 basx388 toEng 7E-1 -> 0.7 |
|
343 basx389 toSci 7E-2 -> 0.07 |
|
344 basx390 toEng 7E-2 -> 0.07 |
|
345 basx391 toSci 7E-3 -> 0.007 |
|
346 basx392 toEng 7E-3 -> 0.007 |
|
347 basx393 toSci 7E-4 -> 0.0007 |
|
348 basx394 toEng 7E-4 -> 0.0007 |
|
349 basx395 toSci 7E-5 -> 0.00007 |
|
350 basx396 toEng 7E-5 -> 0.00007 |
|
351 basx397 toSci 7E-6 -> 0.000007 |
|
352 basx398 toEng 7E-6 -> 0.000007 |
|
353 basx399 toSci 7E-7 -> 7E-7 |
|
354 basx400 toEng 7E-7 -> 700E-9 |
|
355 basx401 toSci 7E-8 -> 7E-8 |
|
356 basx402 toEng 7E-8 -> 70E-9 |
|
357 basx403 toSci 7E-9 -> 7E-9 |
|
358 basx404 toEng 7E-9 -> 7E-9 |
|
359 basx405 toSci 7E-10 -> 7E-10 |
|
360 basx406 toEng 7E-10 -> 700E-12 |
|
361 basx407 toSci 7E-11 -> 7E-11 |
|
362 basx408 toEng 7E-11 -> 70E-12 |
|
363 basx409 toSci 7E-12 -> 7E-12 |
|
364 basx410 toEng 7E-12 -> 7E-12 |
|
365 basx411 toSci 7E-13 -> 7E-13 |
|
366 basx412 toEng 7E-13 -> 700E-15 |
|
367 |
|
368 -- Exacts remain exact up to precision .. |
|
369 precision: 9 |
|
370 basx420 toSci 100 -> 100 |
|
371 basx421 toEng 100 -> 100 |
|
372 basx422 toSci 1000 -> 1000 |
|
373 basx423 toEng 1000 -> 1000 |
|
374 basx424 toSci 999.9 -> 999.9 |
|
375 basx425 toEng 999.9 -> 999.9 |
|
376 basx426 toSci 1000.0 -> 1000.0 |
|
377 basx427 toEng 1000.0 -> 1000.0 |
|
378 basx428 toSci 1000.1 -> 1000.1 |
|
379 basx429 toEng 1000.1 -> 1000.1 |
|
380 basx430 toSci 10000 -> 10000 |
|
381 basx431 toEng 10000 -> 10000 |
|
382 basx432 toSci 100000 -> 100000 |
|
383 basx433 toEng 100000 -> 100000 |
|
384 basx434 toSci 1000000 -> 1000000 |
|
385 basx435 toEng 1000000 -> 1000000 |
|
386 basx436 toSci 10000000 -> 10000000 |
|
387 basx437 toEng 10000000 -> 10000000 |
|
388 basx438 toSci 100000000 -> 100000000 |
|
389 basx439 toEng 100000000 -> 100000000 |
|
390 basx440 toSci 1000000000 -> 1.00000000E+9 Rounded |
|
391 basx441 toEng 1000000000 -> 1.00000000E+9 Rounded |
|
392 basx442 toSci 1000000000 -> 1.00000000E+9 Rounded |
|
393 basx443 toEng 1000000000 -> 1.00000000E+9 Rounded |
|
394 basx444 toSci 1000000003 -> 1.00000000E+9 Rounded Inexact |
|
395 basx445 toEng 1000000003 -> 1.00000000E+9 Rounded Inexact |
|
396 basx446 toSci 1000000005 -> 1.00000001E+9 Rounded Inexact |
|
397 basx447 toEng 1000000005 -> 1.00000001E+9 Rounded Inexact |
|
398 basx448 toSci 10000000050 -> 1.00000001E+10 Rounded Inexact |
|
399 basx449 toEng 10000000050 -> 10.0000001E+9 Rounded Inexact |
|
400 basx450 toSci 1000000009 -> 1.00000001E+9 Rounded Inexact |
|
401 basx451 toEng 1000000009 -> 1.00000001E+9 Rounded Inexact |
|
402 basx452 toSci 10000000000 -> 1.00000000E+10 Rounded |
|
403 basx453 toEng 10000000000 -> 10.0000000E+9 Rounded |
|
404 basx454 toSci 10000000003 -> 1.00000000E+10 Rounded Inexact |
|
405 basx455 toEng 10000000003 -> 10.0000000E+9 Rounded Inexact |
|
406 basx456 toSci 10000000005 -> 1.00000000E+10 Rounded Inexact |
|
407 basx457 toEng 10000000005 -> 10.0000000E+9 Rounded Inexact |
|
408 basx458 toSci 10000000009 -> 1.00000000E+10 Rounded Inexact |
|
409 basx459 toEng 10000000009 -> 10.0000000E+9 Rounded Inexact |
|
410 basx460 toSci 100000000000 -> 1.00000000E+11 Rounded |
|
411 basx461 toEng 100000000000 -> 100.000000E+9 Rounded |
|
412 basx462 toSci 100000000300 -> 1.00000000E+11 Rounded Inexact |
|
413 basx463 toEng 100000000300 -> 100.000000E+9 Rounded Inexact |
|
414 basx464 toSci 100000000500 -> 1.00000001E+11 Rounded Inexact |
|
415 basx465 toEng 100000000500 -> 100.000001E+9 Rounded Inexact |
|
416 basx466 toSci 100000000900 -> 1.00000001E+11 Rounded Inexact |
|
417 basx467 toEng 100000000900 -> 100.000001E+9 Rounded Inexact |
|
418 basx468 toSci 1000000000000 -> 1.00000000E+12 Rounded |
|
419 basx469 toEng 1000000000000 -> 1.00000000E+12 Rounded |
|
420 basx470 toSci 1000000003000 -> 1.00000000E+12 Rounded Inexact |
|
421 basx471 toEng 1000000003000 -> 1.00000000E+12 Rounded Inexact |
|
422 basx472 toSci 1000000005000 -> 1.00000001E+12 Rounded Inexact |
|
423 basx473 toEng 1000000005000 -> 1.00000001E+12 Rounded Inexact |
|
424 basx474 toSci 1000000009000 -> 1.00000001E+12 Rounded Inexact |
|
425 basx475 toEng 1000000009000 -> 1.00000001E+12 Rounded Inexact |
|
426 |
|
427 -- all-nines rounding |
|
428 precision: 9 |
|
429 rounding: half_up |
|
430 basx270 toSci 999999999 -> 999999999 |
|
431 basx271 toSci 9999999990 -> 9.99999999E+9 Rounded |
|
432 basx272 toSci 9999999991 -> 9.99999999E+9 Rounded Inexact |
|
433 basx273 toSci 9999999992 -> 9.99999999E+9 Rounded Inexact |
|
434 basx274 toSci 9999999993 -> 9.99999999E+9 Rounded Inexact |
|
435 basx275 toSci 9999999994 -> 9.99999999E+9 Rounded Inexact |
|
436 basx276 toSci 9999999995 -> 1.00000000E+10 Rounded Inexact |
|
437 basx277 toSci 9999999996 -> 1.00000000E+10 Rounded Inexact |
|
438 basx278 toSci 9999999997 -> 1.00000000E+10 Rounded Inexact |
|
439 basx279 toSci 9999999998 -> 1.00000000E+10 Rounded Inexact |
|
440 basx280 toSci 9999999999 -> 1.00000000E+10 Rounded Inexact |
|
441 basx281 toSci 9999999999999999 -> 1.00000000E+16 Rounded Inexact |
|
442 |
|
443 -- check rounding modes heeded |
|
444 precision: 5 |
|
445 rounding: ceiling |
|
446 bsrx401 toSci 1.23450 -> 1.2345 Rounded |
|
447 bsrx402 toSci 1.234549 -> 1.2346 Rounded Inexact |
|
448 bsrx403 toSci 1.234550 -> 1.2346 Rounded Inexact |
|
449 bsrx404 toSci 1.234551 -> 1.2346 Rounded Inexact |
|
450 rounding: up |
|
451 bsrx405 toSci 1.23450 -> 1.2345 Rounded |
|
452 bsrx406 toSci 1.234549 -> 1.2346 Rounded Inexact |
|
453 bsrx407 toSci 1.234550 -> 1.2346 Rounded Inexact |
|
454 bsrx408 toSci 1.234551 -> 1.2346 Rounded Inexact |
|
455 rounding: floor |
|
456 bsrx410 toSci 1.23450 -> 1.2345 Rounded |
|
457 bsrx411 toSci 1.234549 -> 1.2345 Rounded Inexact |
|
458 bsrx412 toSci 1.234550 -> 1.2345 Rounded Inexact |
|
459 bsrx413 toSci 1.234551 -> 1.2345 Rounded Inexact |
|
460 rounding: half_down |
|
461 bsrx415 toSci 1.23450 -> 1.2345 Rounded |
|
462 bsrx416 toSci 1.234549 -> 1.2345 Rounded Inexact |
|
463 bsrx417 toSci 1.234550 -> 1.2345 Rounded Inexact |
|
464 bsrx418 toSci 1.234650 -> 1.2346 Rounded Inexact |
|
465 bsrx419 toSci 1.234551 -> 1.2346 Rounded Inexact |
|
466 rounding: half_even |
|
467 bsrx421 toSci 1.23450 -> 1.2345 Rounded |
|
468 bsrx422 toSci 1.234549 -> 1.2345 Rounded Inexact |
|
469 bsrx423 toSci 1.234550 -> 1.2346 Rounded Inexact |
|
470 bsrx424 toSci 1.234650 -> 1.2346 Rounded Inexact |
|
471 bsrx425 toSci 1.234551 -> 1.2346 Rounded Inexact |
|
472 rounding: down |
|
473 bsrx426 toSci 1.23450 -> 1.2345 Rounded |
|
474 bsrx427 toSci 1.234549 -> 1.2345 Rounded Inexact |
|
475 bsrx428 toSci 1.234550 -> 1.2345 Rounded Inexact |
|
476 bsrx429 toSci 1.234551 -> 1.2345 Rounded Inexact |
|
477 rounding: half_up |
|
478 bsrx431 toSci 1.23450 -> 1.2345 Rounded |
|
479 bsrx432 toSci 1.234549 -> 1.2345 Rounded Inexact |
|
480 bsrx433 toSci 1.234550 -> 1.2346 Rounded Inexact |
|
481 bsrx434 toSci 1.234650 -> 1.2347 Rounded Inexact |
|
482 bsrx435 toSci 1.234551 -> 1.2346 Rounded Inexact |
|
483 -- negatives |
|
484 rounding: ceiling |
|
485 bsrx501 toSci -1.23450 -> -1.2345 Rounded |
|
486 bsrx502 toSci -1.234549 -> -1.2345 Rounded Inexact |
|
487 bsrx503 toSci -1.234550 -> -1.2345 Rounded Inexact |
|
488 bsrx504 toSci -1.234551 -> -1.2345 Rounded Inexact |
|
489 rounding: up |
|
490 bsrx505 toSci -1.23450 -> -1.2345 Rounded |
|
491 bsrx506 toSci -1.234549 -> -1.2346 Rounded Inexact |
|
492 bsrx507 toSci -1.234550 -> -1.2346 Rounded Inexact |
|
493 bsrx508 toSci -1.234551 -> -1.2346 Rounded Inexact |
|
494 rounding: floor |
|
495 bsrx510 toSci -1.23450 -> -1.2345 Rounded |
|
496 bsrx511 toSci -1.234549 -> -1.2346 Rounded Inexact |
|
497 bsrx512 toSci -1.234550 -> -1.2346 Rounded Inexact |
|
498 bsrx513 toSci -1.234551 -> -1.2346 Rounded Inexact |
|
499 rounding: half_down |
|
500 bsrx515 toSci -1.23450 -> -1.2345 Rounded |
|
501 bsrx516 toSci -1.234549 -> -1.2345 Rounded Inexact |
|
502 bsrx517 toSci -1.234550 -> -1.2345 Rounded Inexact |
|
503 bsrx518 toSci -1.234650 -> -1.2346 Rounded Inexact |
|
504 bsrx519 toSci -1.234551 -> -1.2346 Rounded Inexact |
|
505 rounding: half_even |
|
506 bsrx521 toSci -1.23450 -> -1.2345 Rounded |
|
507 bsrx522 toSci -1.234549 -> -1.2345 Rounded Inexact |
|
508 bsrx523 toSci -1.234550 -> -1.2346 Rounded Inexact |
|
509 bsrx524 toSci -1.234650 -> -1.2346 Rounded Inexact |
|
510 bsrx525 toSci -1.234551 -> -1.2346 Rounded Inexact |
|
511 rounding: down |
|
512 bsrx526 toSci -1.23450 -> -1.2345 Rounded |
|
513 bsrx527 toSci -1.234549 -> -1.2345 Rounded Inexact |
|
514 bsrx528 toSci -1.234550 -> -1.2345 Rounded Inexact |
|
515 bsrx529 toSci -1.234551 -> -1.2345 Rounded Inexact |
|
516 rounding: half_up |
|
517 bsrx531 toSci -1.23450 -> -1.2345 Rounded |
|
518 bsrx532 toSci -1.234549 -> -1.2345 Rounded Inexact |
|
519 bsrx533 toSci -1.234550 -> -1.2346 Rounded Inexact |
|
520 bsrx534 toSci -1.234650 -> -1.2347 Rounded Inexact |
|
521 bsrx535 toSci -1.234551 -> -1.2346 Rounded Inexact |
|
522 |
|
523 -- a few larger exponents |
|
524 maxExponent: 999999999 |
|
525 minExponent: -999999999 |
|
526 basx480 toSci "0.09e999" -> '9E+997' |
|
527 basx481 toSci "0.9e999" -> '9E+998' |
|
528 basx482 toSci "9e999" -> '9E+999' |
|
529 basx483 toSci "9.9e999" -> '9.9E+999' |
|
530 basx484 toSci "9.99e999" -> '9.99E+999' |
|
531 basx485 toSci "9.99e-999" -> '9.99E-999' |
|
532 basx486 toSci "9.9e-999" -> '9.9E-999' |
|
533 basx487 toSci "9e-999" -> '9E-999' |
|
534 basx489 toSci "99e-999" -> '9.9E-998' |
|
535 basx490 toSci "999e-999" -> '9.99E-997' |
|
536 basx491 toSci '0.9e-998' -> '9E-999' |
|
537 basx492 toSci '0.09e-997' -> '9E-999' |
|
538 basx493 toSci '0.1e1000' -> '1E+999' |
|
539 basx494 toSci '10e-1000' -> '1.0E-999' |
|
540 |
|
541 rounding: half_up |
|
542 precision: 9 |
|
543 |
|
544 -- The 'baddies' tests from DiagBigDecimal, plus some new ones |
|
545 basx500 toSci '1..2' -> NaN Conversion_syntax |
|
546 basx501 toSci '.' -> NaN Conversion_syntax |
|
547 basx502 toSci '..' -> NaN Conversion_syntax |
|
548 basx503 toSci '++1' -> NaN Conversion_syntax |
|
549 basx504 toSci '--1' -> NaN Conversion_syntax |
|
550 basx505 toSci '-+1' -> NaN Conversion_syntax |
|
551 basx506 toSci '+-1' -> NaN Conversion_syntax |
|
552 basx507 toSci '12e' -> NaN Conversion_syntax |
|
553 basx508 toSci '12e++' -> NaN Conversion_syntax |
|
554 basx509 toSci '12f4' -> NaN Conversion_syntax |
|
555 basx510 toSci ' +1' -> NaN Conversion_syntax |
|
556 basx511 toSci '+ 1' -> NaN Conversion_syntax |
|
557 basx512 toSci '12 ' -> NaN Conversion_syntax |
|
558 basx513 toSci ' + 1' -> NaN Conversion_syntax |
|
559 basx514 toSci ' - 1 ' -> NaN Conversion_syntax |
|
560 basx515 toSci 'x' -> NaN Conversion_syntax |
|
561 basx516 toSci '-1-' -> NaN Conversion_syntax |
|
562 basx517 toSci '12-' -> NaN Conversion_syntax |
|
563 basx518 toSci '3+' -> NaN Conversion_syntax |
|
564 basx519 toSci '' -> NaN Conversion_syntax |
|
565 basx520 toSci '1e-' -> NaN Conversion_syntax |
|
566 basx521 toSci '7e99999a' -> NaN Conversion_syntax |
|
567 basx522 toSci '7e123567890x' -> NaN Conversion_syntax |
|
568 basx523 toSci '7e12356789012x' -> NaN Conversion_syntax |
|
569 basx524 toSci '' -> NaN Conversion_syntax |
|
570 basx525 toSci 'e100' -> NaN Conversion_syntax |
|
571 basx526 toSci '\u0e5a' -> NaN Conversion_syntax |
|
572 basx527 toSci '\u0b65' -> NaN Conversion_syntax |
|
573 basx528 toSci '123,65' -> NaN Conversion_syntax |
|
574 basx529 toSci '1.34.5' -> NaN Conversion_syntax |
|
575 basx530 toSci '.123.5' -> NaN Conversion_syntax |
|
576 basx531 toSci '01.35.' -> NaN Conversion_syntax |
|
577 basx532 toSci '01.35-' -> NaN Conversion_syntax |
|
578 basx533 toSci '0000..' -> NaN Conversion_syntax |
|
579 basx534 toSci '.0000.' -> NaN Conversion_syntax |
|
580 basx535 toSci '00..00' -> NaN Conversion_syntax |
|
581 basx536 toSci '111e*123' -> NaN Conversion_syntax |
|
582 basx537 toSci '111e123-' -> NaN Conversion_syntax |
|
583 basx538 toSci '111e+12+' -> NaN Conversion_syntax |
|
584 basx539 toSci '111e1-3-' -> NaN Conversion_syntax |
|
585 basx540 toSci '111e1*23' -> NaN Conversion_syntax |
|
586 basx541 toSci '111e1e+3' -> NaN Conversion_syntax |
|
587 basx542 toSci '1e1.0' -> NaN Conversion_syntax |
|
588 basx543 toSci '1e123e' -> NaN Conversion_syntax |
|
589 basx544 toSci 'ten' -> NaN Conversion_syntax |
|
590 basx545 toSci 'ONE' -> NaN Conversion_syntax |
|
591 basx546 toSci '1e.1' -> NaN Conversion_syntax |
|
592 basx547 toSci '1e1.' -> NaN Conversion_syntax |
|
593 basx548 toSci '1ee' -> NaN Conversion_syntax |
|
594 basx549 toSci 'e+1' -> NaN Conversion_syntax |
|
595 basx550 toSci '1.23.4' -> NaN Conversion_syntax |
|
596 basx551 toSci '1.2.1' -> NaN Conversion_syntax |
|
597 basx552 toSci '1E+1.2' -> NaN Conversion_syntax |
|
598 basx553 toSci '1E+1.2.3' -> NaN Conversion_syntax |
|
599 basx554 toSci '1E++1' -> NaN Conversion_syntax |
|
600 basx555 toSci '1E--1' -> NaN Conversion_syntax |
|
601 basx556 toSci '1E+-1' -> NaN Conversion_syntax |
|
602 basx557 toSci '1E-+1' -> NaN Conversion_syntax |
|
603 basx558 toSci '1E''1' -> NaN Conversion_syntax |
|
604 basx559 toSci "1E""1" -> NaN Conversion_syntax |
|
605 basx560 toSci "1E""""" -> NaN Conversion_syntax |
|
606 -- Near-specials |
|
607 basx561 toSci "qNaN" -> NaN Conversion_syntax |
|
608 basx562 toSci "NaNq" -> NaN Conversion_syntax |
|
609 basx563 toSci "NaNs" -> NaN Conversion_syntax |
|
610 basx564 toSci "Infi" -> NaN Conversion_syntax |
|
611 basx565 toSci "Infin" -> NaN Conversion_syntax |
|
612 basx566 toSci "Infini" -> NaN Conversion_syntax |
|
613 basx567 toSci "Infinit" -> NaN Conversion_syntax |
|
614 basx568 toSci "-Infinit" -> NaN Conversion_syntax |
|
615 basx569 toSci "0Inf" -> NaN Conversion_syntax |
|
616 basx570 toSci "9Inf" -> NaN Conversion_syntax |
|
617 basx571 toSci "-0Inf" -> NaN Conversion_syntax |
|
618 basx572 toSci "-9Inf" -> NaN Conversion_syntax |
|
619 basx573 toSci "-sNa" -> NaN Conversion_syntax |
|
620 basx574 toSci "xNaN" -> NaN Conversion_syntax |
|
621 basx575 toSci "0sNaN" -> NaN Conversion_syntax |
|
622 |
|
623 -- some baddies with dots and Es and dots and specials |
|
624 basx576 toSci 'e+1' -> NaN Conversion_syntax |
|
625 basx577 toSci '.e+1' -> NaN Conversion_syntax |
|
626 basx578 toSci '+.e+1' -> NaN Conversion_syntax |
|
627 basx579 toSci '-.e+' -> NaN Conversion_syntax |
|
628 basx580 toSci '-.e' -> NaN Conversion_syntax |
|
629 basx581 toSci 'E+1' -> NaN Conversion_syntax |
|
630 basx582 toSci '.E+1' -> NaN Conversion_syntax |
|
631 basx583 toSci '+.E+1' -> NaN Conversion_syntax |
|
632 basx584 toSci '-.E+' -> NaN Conversion_syntax |
|
633 basx585 toSci '-.E' -> NaN Conversion_syntax |
|
634 |
|
635 basx586 toSci '.NaN' -> NaN Conversion_syntax |
|
636 basx587 toSci '-.NaN' -> NaN Conversion_syntax |
|
637 basx588 toSci '+.sNaN' -> NaN Conversion_syntax |
|
638 basx589 toSci '+.Inf' -> NaN Conversion_syntax |
|
639 basx590 toSci '.Infinity' -> NaN Conversion_syntax |
|
640 |
|
641 -- Zeros |
|
642 basx601 toSci 0.000000000 -> 0E-9 |
|
643 basx602 toSci 0.00000000 -> 0E-8 |
|
644 basx603 toSci 0.0000000 -> 0E-7 |
|
645 basx604 toSci 0.000000 -> 0.000000 |
|
646 basx605 toSci 0.00000 -> 0.00000 |
|
647 basx606 toSci 0.0000 -> 0.0000 |
|
648 basx607 toSci 0.000 -> 0.000 |
|
649 basx608 toSci 0.00 -> 0.00 |
|
650 basx609 toSci 0.0 -> 0.0 |
|
651 basx610 toSci .0 -> 0.0 |
|
652 basx611 toSci 0. -> 0 |
|
653 basx612 toSci -.0 -> -0.0 |
|
654 basx613 toSci -0. -> -0 |
|
655 basx614 toSci -0.0 -> -0.0 |
|
656 basx615 toSci -0.00 -> -0.00 |
|
657 basx616 toSci -0.000 -> -0.000 |
|
658 basx617 toSci -0.0000 -> -0.0000 |
|
659 basx618 toSci -0.00000 -> -0.00000 |
|
660 basx619 toSci -0.000000 -> -0.000000 |
|
661 basx620 toSci -0.0000000 -> -0E-7 |
|
662 basx621 toSci -0.00000000 -> -0E-8 |
|
663 basx622 toSci -0.000000000 -> -0E-9 |
|
664 |
|
665 basx630 toSci 0.00E+0 -> 0.00 |
|
666 basx631 toSci 0.00E+1 -> 0.0 |
|
667 basx632 toSci 0.00E+2 -> 0 |
|
668 basx633 toSci 0.00E+3 -> 0E+1 |
|
669 basx634 toSci 0.00E+4 -> 0E+2 |
|
670 basx635 toSci 0.00E+5 -> 0E+3 |
|
671 basx636 toSci 0.00E+6 -> 0E+4 |
|
672 basx637 toSci 0.00E+7 -> 0E+5 |
|
673 basx638 toSci 0.00E+8 -> 0E+6 |
|
674 basx639 toSci 0.00E+9 -> 0E+7 |
|
675 |
|
676 basx640 toSci 0.0E+0 -> 0.0 |
|
677 basx641 toSci 0.0E+1 -> 0 |
|
678 basx642 toSci 0.0E+2 -> 0E+1 |
|
679 basx643 toSci 0.0E+3 -> 0E+2 |
|
680 basx644 toSci 0.0E+4 -> 0E+3 |
|
681 basx645 toSci 0.0E+5 -> 0E+4 |
|
682 basx646 toSci 0.0E+6 -> 0E+5 |
|
683 basx647 toSci 0.0E+7 -> 0E+6 |
|
684 basx648 toSci 0.0E+8 -> 0E+7 |
|
685 basx649 toSci 0.0E+9 -> 0E+8 |
|
686 |
|
687 basx650 toSci 0E+0 -> 0 |
|
688 basx651 toSci 0E+1 -> 0E+1 |
|
689 basx652 toSci 0E+2 -> 0E+2 |
|
690 basx653 toSci 0E+3 -> 0E+3 |
|
691 basx654 toSci 0E+4 -> 0E+4 |
|
692 basx655 toSci 0E+5 -> 0E+5 |
|
693 basx656 toSci 0E+6 -> 0E+6 |
|
694 basx657 toSci 0E+7 -> 0E+7 |
|
695 basx658 toSci 0E+8 -> 0E+8 |
|
696 basx659 toSci 0E+9 -> 0E+9 |
|
697 |
|
698 basx660 toSci 0.0E-0 -> 0.0 |
|
699 basx661 toSci 0.0E-1 -> 0.00 |
|
700 basx662 toSci 0.0E-2 -> 0.000 |
|
701 basx663 toSci 0.0E-3 -> 0.0000 |
|
702 basx664 toSci 0.0E-4 -> 0.00000 |
|
703 basx665 toSci 0.0E-5 -> 0.000000 |
|
704 basx666 toSci 0.0E-6 -> 0E-7 |
|
705 basx667 toSci 0.0E-7 -> 0E-8 |
|
706 basx668 toSci 0.0E-8 -> 0E-9 |
|
707 basx669 toSci 0.0E-9 -> 0E-10 |
|
708 |
|
709 basx670 toSci 0.00E-0 -> 0.00 |
|
710 basx671 toSci 0.00E-1 -> 0.000 |
|
711 basx672 toSci 0.00E-2 -> 0.0000 |
|
712 basx673 toSci 0.00E-3 -> 0.00000 |
|
713 basx674 toSci 0.00E-4 -> 0.000000 |
|
714 basx675 toSci 0.00E-5 -> 0E-7 |
|
715 basx676 toSci 0.00E-6 -> 0E-8 |
|
716 basx677 toSci 0.00E-7 -> 0E-9 |
|
717 basx678 toSci 0.00E-8 -> 0E-10 |
|
718 basx679 toSci 0.00E-9 -> 0E-11 |
|
719 |
|
720 basx680 toSci 000000. -> 0 |
|
721 basx681 toSci 00000. -> 0 |
|
722 basx682 toSci 0000. -> 0 |
|
723 basx683 toSci 000. -> 0 |
|
724 basx684 toSci 00. -> 0 |
|
725 basx685 toSci 0. -> 0 |
|
726 basx686 toSci +00000. -> 0 |
|
727 basx687 toSci -00000. -> -0 |
|
728 basx688 toSci +0. -> 0 |
|
729 basx689 toSci -0. -> -0 |
|
730 |
|
731 -- Specials |
|
732 precision: 4 |
|
733 basx700 toSci "NaN" -> NaN |
|
734 basx701 toSci "nan" -> NaN |
|
735 basx702 toSci "nAn" -> NaN |
|
736 basx703 toSci "NAN" -> NaN |
|
737 basx704 toSci "+NaN" -> NaN |
|
738 basx705 toSci "+nan" -> NaN |
|
739 basx706 toSci "+nAn" -> NaN |
|
740 basx707 toSci "+NAN" -> NaN |
|
741 basx708 toSci "-NaN" -> -NaN |
|
742 basx709 toSci "-nan" -> -NaN |
|
743 basx710 toSci "-nAn" -> -NaN |
|
744 basx711 toSci "-NAN" -> -NaN |
|
745 basx712 toSci 'NaN0' -> NaN |
|
746 basx713 toSci 'NaN1' -> NaN1 |
|
747 basx714 toSci 'NaN12' -> NaN12 |
|
748 basx715 toSci 'NaN123' -> NaN123 |
|
749 basx716 toSci 'NaN1234' -> NaN1234 |
|
750 basx717 toSci 'NaN01' -> NaN1 |
|
751 basx718 toSci 'NaN012' -> NaN12 |
|
752 basx719 toSci 'NaN0123' -> NaN123 |
|
753 basx720 toSci 'NaN01234' -> NaN1234 |
|
754 basx721 toSci 'NaN001' -> NaN1 |
|
755 basx722 toSci 'NaN0012' -> NaN12 |
|
756 basx723 toSci 'NaN00123' -> NaN123 |
|
757 basx724 toSci 'NaN001234' -> NaN1234 |
|
758 basx725 toSci 'NaN12345' -> NaN Conversion_syntax |
|
759 basx726 toSci 'NaN123e+1' -> NaN Conversion_syntax |
|
760 basx727 toSci 'NaN12.45' -> NaN Conversion_syntax |
|
761 basx728 toSci 'NaN-12' -> NaN Conversion_syntax |
|
762 basx729 toSci 'NaN+12' -> NaN Conversion_syntax |
|
763 |
|
764 basx730 toSci "sNaN" -> sNaN |
|
765 basx731 toSci "snan" -> sNaN |
|
766 basx732 toSci "SnAn" -> sNaN |
|
767 basx733 toSci "SNAN" -> sNaN |
|
768 basx734 toSci "+sNaN" -> sNaN |
|
769 basx735 toSci "+snan" -> sNaN |
|
770 basx736 toSci "+SnAn" -> sNaN |
|
771 basx737 toSci "+SNAN" -> sNaN |
|
772 basx738 toSci "-sNaN" -> -sNaN |
|
773 basx739 toSci "-snan" -> -sNaN |
|
774 basx740 toSci "-SnAn" -> -sNaN |
|
775 basx741 toSci "-SNAN" -> -sNaN |
|
776 basx742 toSci 'sNaN0000' -> sNaN |
|
777 basx743 toSci 'sNaN7' -> sNaN7 |
|
778 basx744 toSci 'sNaN007234' -> sNaN7234 |
|
779 basx745 toSci 'sNaN72345' -> NaN Conversion_syntax |
|
780 basx746 toSci 'sNaN72.45' -> NaN Conversion_syntax |
|
781 basx747 toSci 'sNaN-72' -> NaN Conversion_syntax |
|
782 |
|
783 basx748 toSci "Inf" -> Infinity |
|
784 basx749 toSci "inf" -> Infinity |
|
785 basx750 toSci "iNf" -> Infinity |
|
786 basx751 toSci "INF" -> Infinity |
|
787 basx752 toSci "+Inf" -> Infinity |
|
788 basx753 toSci "+inf" -> Infinity |
|
789 basx754 toSci "+iNf" -> Infinity |
|
790 basx755 toSci "+INF" -> Infinity |
|
791 basx756 toSci "-Inf" -> -Infinity |
|
792 basx757 toSci "-inf" -> -Infinity |
|
793 basx758 toSci "-iNf" -> -Infinity |
|
794 basx759 toSci "-INF" -> -Infinity |
|
795 |
|
796 basx760 toSci "Infinity" -> Infinity |
|
797 basx761 toSci "infinity" -> Infinity |
|
798 basx762 toSci "iNfInItY" -> Infinity |
|
799 basx763 toSci "INFINITY" -> Infinity |
|
800 basx764 toSci "+Infinity" -> Infinity |
|
801 basx765 toSci "+infinity" -> Infinity |
|
802 basx766 toSci "+iNfInItY" -> Infinity |
|
803 basx767 toSci "+INFINITY" -> Infinity |
|
804 basx768 toSci "-Infinity" -> -Infinity |
|
805 basx769 toSci "-infinity" -> -Infinity |
|
806 basx770 toSci "-iNfInItY" -> -Infinity |
|
807 basx771 toSci "-INFINITY" -> -Infinity |
|
808 |
|
809 -- Specials and zeros for toEng |
|
810 basx772 toEng "NaN" -> NaN |
|
811 basx773 toEng "-Infinity" -> -Infinity |
|
812 basx774 toEng "-sNaN" -> -sNaN |
|
813 basx775 toEng "-NaN" -> -NaN |
|
814 basx776 toEng "+Infinity" -> Infinity |
|
815 basx778 toEng "+sNaN" -> sNaN |
|
816 basx779 toEng "+NaN" -> NaN |
|
817 basx780 toEng "INFINITY" -> Infinity |
|
818 basx781 toEng "SNAN" -> sNaN |
|
819 basx782 toEng "NAN" -> NaN |
|
820 basx783 toEng "infinity" -> Infinity |
|
821 basx784 toEng "snan" -> sNaN |
|
822 basx785 toEng "nan" -> NaN |
|
823 basx786 toEng "InFINITY" -> Infinity |
|
824 basx787 toEng "SnAN" -> sNaN |
|
825 basx788 toEng "nAN" -> NaN |
|
826 basx789 toEng "iNfinity" -> Infinity |
|
827 basx790 toEng "sNan" -> sNaN |
|
828 basx791 toEng "Nan" -> NaN |
|
829 basx792 toEng "Infinity" -> Infinity |
|
830 basx793 toEng "sNaN" -> sNaN |
|
831 |
|
832 -- Zero toEng, etc. |
|
833 basx800 toEng 0e+1 -> "0.00E+3" -- doc example |
|
834 |
|
835 basx801 toEng 0.000000000 -> 0E-9 |
|
836 basx802 toEng 0.00000000 -> 0.00E-6 |
|
837 basx803 toEng 0.0000000 -> 0.0E-6 |
|
838 basx804 toEng 0.000000 -> 0.000000 |
|
839 basx805 toEng 0.00000 -> 0.00000 |
|
840 basx806 toEng 0.0000 -> 0.0000 |
|
841 basx807 toEng 0.000 -> 0.000 |
|
842 basx808 toEng 0.00 -> 0.00 |
|
843 basx809 toEng 0.0 -> 0.0 |
|
844 basx810 toEng .0 -> 0.0 |
|
845 basx811 toEng 0. -> 0 |
|
846 basx812 toEng -.0 -> -0.0 |
|
847 basx813 toEng -0. -> -0 |
|
848 basx814 toEng -0.0 -> -0.0 |
|
849 basx815 toEng -0.00 -> -0.00 |
|
850 basx816 toEng -0.000 -> -0.000 |
|
851 basx817 toEng -0.0000 -> -0.0000 |
|
852 basx818 toEng -0.00000 -> -0.00000 |
|
853 basx819 toEng -0.000000 -> -0.000000 |
|
854 basx820 toEng -0.0000000 -> -0.0E-6 |
|
855 basx821 toEng -0.00000000 -> -0.00E-6 |
|
856 basx822 toEng -0.000000000 -> -0E-9 |
|
857 |
|
858 basx830 toEng 0.00E+0 -> 0.00 |
|
859 basx831 toEng 0.00E+1 -> 0.0 |
|
860 basx832 toEng 0.00E+2 -> 0 |
|
861 basx833 toEng 0.00E+3 -> 0.00E+3 |
|
862 basx834 toEng 0.00E+4 -> 0.0E+3 |
|
863 basx835 toEng 0.00E+5 -> 0E+3 |
|
864 basx836 toEng 0.00E+6 -> 0.00E+6 |
|
865 basx837 toEng 0.00E+7 -> 0.0E+6 |
|
866 basx838 toEng 0.00E+8 -> 0E+6 |
|
867 basx839 toEng 0.00E+9 -> 0.00E+9 |
|
868 |
|
869 basx840 toEng 0.0E+0 -> 0.0 |
|
870 basx841 toEng 0.0E+1 -> 0 |
|
871 basx842 toEng 0.0E+2 -> 0.00E+3 |
|
872 basx843 toEng 0.0E+3 -> 0.0E+3 |
|
873 basx844 toEng 0.0E+4 -> 0E+3 |
|
874 basx845 toEng 0.0E+5 -> 0.00E+6 |
|
875 basx846 toEng 0.0E+6 -> 0.0E+6 |
|
876 basx847 toEng 0.0E+7 -> 0E+6 |
|
877 basx848 toEng 0.0E+8 -> 0.00E+9 |
|
878 basx849 toEng 0.0E+9 -> 0.0E+9 |
|
879 |
|
880 basx850 toEng 0E+0 -> 0 |
|
881 basx851 toEng 0E+1 -> 0.00E+3 |
|
882 basx852 toEng 0E+2 -> 0.0E+3 |
|
883 basx853 toEng 0E+3 -> 0E+3 |
|
884 basx854 toEng 0E+4 -> 0.00E+6 |
|
885 basx855 toEng 0E+5 -> 0.0E+6 |
|
886 basx856 toEng 0E+6 -> 0E+6 |
|
887 basx857 toEng 0E+7 -> 0.00E+9 |
|
888 basx858 toEng 0E+8 -> 0.0E+9 |
|
889 basx859 toEng 0E+9 -> 0E+9 |
|
890 |
|
891 basx860 toEng 0.0E-0 -> 0.0 |
|
892 basx861 toEng 0.0E-1 -> 0.00 |
|
893 basx862 toEng 0.0E-2 -> 0.000 |
|
894 basx863 toEng 0.0E-3 -> 0.0000 |
|
895 basx864 toEng 0.0E-4 -> 0.00000 |
|
896 basx865 toEng 0.0E-5 -> 0.000000 |
|
897 basx866 toEng 0.0E-6 -> 0.0E-6 |
|
898 basx867 toEng 0.0E-7 -> 0.00E-6 |
|
899 basx868 toEng 0.0E-8 -> 0E-9 |
|
900 basx869 toEng 0.0E-9 -> 0.0E-9 |
|
901 |
|
902 basx870 toEng 0.00E-0 -> 0.00 |
|
903 basx871 toEng 0.00E-1 -> 0.000 |
|
904 basx872 toEng 0.00E-2 -> 0.0000 |
|
905 basx873 toEng 0.00E-3 -> 0.00000 |
|
906 basx874 toEng 0.00E-4 -> 0.000000 |
|
907 basx875 toEng 0.00E-5 -> 0.0E-6 |
|
908 basx876 toEng 0.00E-6 -> 0.00E-6 |
|
909 basx877 toEng 0.00E-7 -> 0E-9 |
|
910 basx878 toEng 0.00E-8 -> 0.0E-9 |
|
911 basx879 toEng 0.00E-9 -> 0.00E-9 |
|
912 |
|
913 |
|
914 rounding: half_up |
|
915 precision: 9 |
|
916 -- subnormals and overflows |
|
917 basx906 toSci '99e999999999' -> Infinity Overflow Inexact Rounded |
|
918 basx907 toSci '999e999999999' -> Infinity Overflow Inexact Rounded |
|
919 basx908 toSci '0.9e-999999999' -> 9E-1000000000 Subnormal |
|
920 basx909 toSci '0.09e-999999999' -> 9E-1000000001 Subnormal |
|
921 basx910 toSci '0.1e1000000000' -> 1E+999999999 |
|
922 basx911 toSci '10e-1000000000' -> 1.0E-999999999 |
|
923 basx912 toSci '0.9e9999999999' -> Infinity Overflow Inexact Rounded |
|
924 basx913 toSci '99e-9999999999' -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
925 basx914 toSci '111e9999999999' -> Infinity Overflow Inexact Rounded |
|
926 basx915 toSci '1111e-9999999999' -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
927 basx916 toSci '1111e-99999999999' -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
928 basx917 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
|
929 -- negatives the same |
|
930 basx918 toSci '-99e999999999' -> -Infinity Overflow Inexact Rounded |
|
931 basx919 toSci '-999e999999999' -> -Infinity Overflow Inexact Rounded |
|
932 basx920 toSci '-0.9e-999999999' -> -9E-1000000000 Subnormal |
|
933 basx921 toSci '-0.09e-999999999' -> -9E-1000000001 Subnormal |
|
934 basx922 toSci '-0.1e1000000000' -> -1E+999999999 |
|
935 basx923 toSci '-10e-1000000000' -> -1.0E-999999999 |
|
936 basx924 toSci '-0.9e9999999999' -> -Infinity Overflow Inexact Rounded |
|
937 basx925 toSci '-99e-9999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
938 basx926 toSci '-111e9999999999' -> -Infinity Overflow Inexact Rounded |
|
939 basx927 toSci '-1111e-9999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
940 basx928 toSci '-1111e-99999999999' -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
941 basx929 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
|
942 |
|
943 rounding: ceiling |
|
944 basx930 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
|
945 basx931 toSci '-7e1000000000' -> -9.99999999E+999999999 Overflow Inexact Rounded |
|
946 rounding: up |
|
947 basx932 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
|
948 basx933 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
|
949 rounding: down |
|
950 basx934 toSci '7e1000000000' -> 9.99999999E+999999999 Overflow Inexact Rounded |
|
951 basx935 toSci '-7e1000000000' -> -9.99999999E+999999999 Overflow Inexact Rounded |
|
952 rounding: floor |
|
953 basx936 toSci '7e1000000000' -> 9.99999999E+999999999 Overflow Inexact Rounded |
|
954 basx937 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
|
955 |
|
956 rounding: half_up |
|
957 basx938 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
|
958 basx939 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
|
959 rounding: half_even |
|
960 basx940 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
|
961 basx941 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
|
962 rounding: half_down |
|
963 basx942 toSci '7e1000000000' -> Infinity Overflow Inexact Rounded |
|
964 basx943 toSci '-7e1000000000' -> -Infinity Overflow Inexact Rounded |
|
965 |
|
966 rounding: half_even |
|
967 |
|
968 |
|
969 -- Giga exponent initial tests |
|
970 maxExponent: 999999999 |
|
971 minExponent: -999999999 |
|
972 |
|
973 basx951 toSci '99e999' -> '9.9E+1000' |
|
974 basx952 toSci '999e999' -> '9.99E+1001' |
|
975 basx953 toSci '0.9e-999' -> '9E-1000' |
|
976 basx954 toSci '0.09e-999' -> '9E-1001' |
|
977 basx955 toSci '0.1e1001' -> '1E+1000' |
|
978 basx956 toSci '10e-1001' -> '1.0E-1000' |
|
979 basx957 toSci '0.9e9999' -> '9E+9998' |
|
980 basx958 toSci '99e-9999' -> '9.9E-9998' |
|
981 basx959 toSci '111e9997' -> '1.11E+9999' |
|
982 basx960 toSci '1111e-9999' -> '1.111E-9996' |
|
983 basx961 toSci '99e9999' -> '9.9E+10000' |
|
984 basx962 toSci '999e9999' -> '9.99E+10001' |
|
985 basx963 toSci '0.9e-9999' -> '9E-10000' |
|
986 basx964 toSci '0.09e-9999' -> '9E-10001' |
|
987 basx965 toSci '0.1e10001' -> '1E+10000' |
|
988 basx966 toSci '10e-10001' -> '1.0E-10000' |
|
989 basx967 toSci '0.9e99999' -> '9E+99998' |
|
990 basx968 toSci '99e-99999' -> '9.9E-99998' |
|
991 basx969 toSci '111e99999' -> '1.11E+100001' |
|
992 basx970 toSci '1111e-99999' -> '1.111E-99996' |
|
993 basx971 toSci "0.09e999999999" -> '9E+999999997' |
|
994 basx972 toSci "0.9e999999999" -> '9E+999999998' |
|
995 basx973 toSci "9e999999999" -> '9E+999999999' |
|
996 basx974 toSci "9.9e999999999" -> '9.9E+999999999' |
|
997 basx975 toSci "9.99e999999999" -> '9.99E+999999999' |
|
998 basx976 toSci "9.99e-999999999" -> '9.99E-999999999' |
|
999 basx977 toSci "9.9e-999999999" -> '9.9E-999999999' |
|
1000 basx978 toSci "9e-999999999" -> '9E-999999999' |
|
1001 basx979 toSci "99e-999999999" -> '9.9E-999999998' |
|
1002 basx980 toSci "999e-999999999" -> '9.99E-999999997' |
|
1003 |
|
1004 -- Varying exponent maximums |
|
1005 precision: 5 |
|
1006 maxexponent: 0 |
|
1007 minexponent: 0 |
|
1008 emax001 toSci -1E+2 -> -Infinity Overflow Inexact Rounded |
|
1009 emax002 toSci -100 -> -Infinity Overflow Inexact Rounded |
|
1010 emax003 toSci -10 -> -Infinity Overflow Inexact Rounded |
|
1011 emax004 toSci -9.9 -> -9.9 |
|
1012 emax005 toSci -9 -> -9 |
|
1013 emax006 toSci -1 -> -1 |
|
1014 emax007 toSci 0 -> 0 |
|
1015 emax008 toSci 1 -> 1 |
|
1016 emax009 toSci 9 -> 9 |
|
1017 emax010 toSci 9.9 -> 9.9 |
|
1018 emax011 toSci 10 -> Infinity Overflow Inexact Rounded |
|
1019 emax012 toSci 100 -> Infinity Overflow Inexact Rounded |
|
1020 emax013 toSci 1E+2 -> Infinity Overflow Inexact Rounded |
|
1021 emax014 toSci 0.99 -> 0.99 Subnormal |
|
1022 emax015 toSci 0.1 -> 0.1 Subnormal |
|
1023 emax016 toSci 0.01 -> 0.01 Subnormal |
|
1024 emax017 toSci 1E-1 -> 0.1 Subnormal |
|
1025 emax018 toSci 1E-2 -> 0.01 Subnormal |
|
1026 |
|
1027 maxexponent: 1 |
|
1028 minexponent: -1 |
|
1029 emax100 toSci -1E+3 -> -Infinity Overflow Inexact Rounded |
|
1030 emax101 toSci -1E+2 -> -Infinity Overflow Inexact Rounded |
|
1031 emax102 toSci -100 -> -Infinity Overflow Inexact Rounded |
|
1032 emax103 toSci -10 -> -10 |
|
1033 emax104 toSci -9.9 -> -9.9 |
|
1034 emax105 toSci -9 -> -9 |
|
1035 emax106 toSci -1 -> -1 |
|
1036 emax107 toSci 0 -> 0 |
|
1037 emax108 toSci 1 -> 1 |
|
1038 emax109 toSci 9 -> 9 |
|
1039 emax110 toSci 9.9 -> 9.9 |
|
1040 emax111 toSci 10 -> 10 |
|
1041 emax112 toSci 100 -> Infinity Overflow Inexact Rounded |
|
1042 emax113 toSci 1E+2 -> Infinity Overflow Inexact Rounded |
|
1043 emax114 toSci 1E+3 -> Infinity Overflow Inexact Rounded |
|
1044 emax115 toSci 0.99 -> 0.99 |
|
1045 emax116 toSci 0.1 -> 0.1 |
|
1046 emax117 toSci 0.01 -> 0.01 Subnormal |
|
1047 emax118 toSci 1E-1 -> 0.1 |
|
1048 emax119 toSci 1E-2 -> 0.01 Subnormal |
|
1049 emax120 toSci 1E-3 -> 0.001 Subnormal |
|
1050 emax121 toSci 1.1E-3 -> 0.0011 Subnormal |
|
1051 emax122 toSci 1.11E-3 -> 0.00111 Subnormal |
|
1052 emax123 toSci 1.111E-3 -> 0.00111 Subnormal Underflow Inexact Rounded |
|
1053 emax124 toSci 1.1111E-3 -> 0.00111 Subnormal Underflow Inexact Rounded |
|
1054 emax125 toSci 1.11111E-3 -> 0.00111 Subnormal Underflow Inexact Rounded |
|
1055 |
|
1056 maxexponent: 2 |
|
1057 minexponent: -2 |
|
1058 precision: 9 |
|
1059 emax200 toSci -1E+3 -> -Infinity Overflow Inexact Rounded |
|
1060 emax201 toSci -1E+2 -> -1E+2 |
|
1061 emax202 toSci -100 -> -100 |
|
1062 emax203 toSci -10 -> -10 |
|
1063 emax204 toSci -9.9 -> -9.9 |
|
1064 emax205 toSci -9 -> -9 |
|
1065 emax206 toSci -1 -> -1 |
|
1066 emax207 toSci 0 -> 0 |
|
1067 emax208 toSci 1 -> 1 |
|
1068 emax209 toSci 9 -> 9 |
|
1069 emax210 toSci 9.9 -> 9.9 |
|
1070 emax211 toSci 10 -> 10 |
|
1071 emax212 toSci 100 -> 100 |
|
1072 emax213 toSci 1E+2 -> 1E+2 |
|
1073 emax214 toSci 1E+3 -> Infinity Overflow Inexact Rounded |
|
1074 emax215 toSci 0.99 -> 0.99 |
|
1075 emax216 toSci 0.1 -> 0.1 |
|
1076 emax217 toSci 0.01 -> 0.01 |
|
1077 emax218 toSci 0.001 -> 0.001 Subnormal |
|
1078 emax219 toSci 1E-1 -> 0.1 |
|
1079 emax220 toSci 1E-2 -> 0.01 |
|
1080 emax221 toSci 1E-3 -> 0.001 Subnormal |
|
1081 emax222 toSci 1E-4 -> 0.0001 Subnormal |
|
1082 emax223 toSci 1E-5 -> 0.00001 Subnormal |
|
1083 emax224 toSci 1E-6 -> 0.000001 Subnormal |
|
1084 emax225 toSci 1E-7 -> 1E-7 Subnormal |
|
1085 emax226 toSci 1E-8 -> 1E-8 Subnormal |
|
1086 emax227 toSci 1E-9 -> 1E-9 Subnormal |
|
1087 emax228 toSci 1E-10 -> 1E-10 Subnormal |
|
1088 emax229 toSci 1E-11 -> 0E-10 Underflow Subnormal Inexact Rounded Clamped |
|
1089 emax230 toSci 1E-12 -> 0E-10 Underflow Subnormal Inexact Rounded Clamped |
|
1090 |
|
1091 maxexponent: 7 |
|
1092 minexponent: -7 |
|
1093 emax231 toSci 1E-8 -> 1E-8 Subnormal |
|
1094 emax232 toSci 1E-7 -> 1E-7 |
|
1095 emax233 toSci 1E-6 -> 0.000001 |
|
1096 emax234 toSci 1E-5 -> 0.00001 |
|
1097 emax235 toSci 1E+5 -> 1E+5 |
|
1098 emax236 toSci 1E+6 -> 1E+6 |
|
1099 emax237 toSci 1E+7 -> 1E+7 |
|
1100 emax238 toSci 1E+8 -> Infinity Overflow Inexact Rounded |
|
1101 |
|
1102 maxexponent: 9 |
|
1103 minexponent: -9 |
|
1104 emax240 toSci 1E-21 -> 0E-17 Subnormal Underflow Inexact Rounded Clamped |
|
1105 emax241 toSci 1E-10 -> 1E-10 Subnormal |
|
1106 emax242 toSci 1E-9 -> 1E-9 |
|
1107 emax243 toSci 1E-8 -> 1E-8 |
|
1108 emax244 toSci 1E-7 -> 1E-7 |
|
1109 emax245 toSci 1E+7 -> 1E+7 |
|
1110 emax246 toSci 1E+8 -> 1E+8 |
|
1111 emax247 toSci 1E+9 -> 1E+9 |
|
1112 emax248 toSci 1E+10 -> Infinity Overflow Inexact Rounded |
|
1113 |
|
1114 maxexponent: 10 -- boundary |
|
1115 minexponent: -10 |
|
1116 emax250 toSci 1E-21 -> 0E-18 Underflow Subnormal Inexact Rounded Clamped |
|
1117 emax251 toSci 1E-11 -> 1E-11 Subnormal |
|
1118 emax252 toSci 1E-10 -> 1E-10 |
|
1119 emax253 toSci 1E-9 -> 1E-9 |
|
1120 emax254 toSci 1E-8 -> 1E-8 |
|
1121 emax255 toSci 1E+8 -> 1E+8 |
|
1122 emax256 toSci 1E+9 -> 1E+9 |
|
1123 emax257 toSci 1E+10 -> 1E+10 |
|
1124 emax258 toSci 1E+11 -> Infinity Overflow Inexact Rounded |
|
1125 |
|
1126 emax260 toSci 1.00E-21 -> 0E-18 Underflow Subnormal Inexact Rounded Clamped |
|
1127 emax261 toSci 1.00E-11 -> 1.00E-11 Subnormal |
|
1128 emax262 toSci 1.00E-10 -> 1.00E-10 |
|
1129 emax263 toSci 1.00E-9 -> 1.00E-9 |
|
1130 emax264 toSci 1.00E-8 -> 1.00E-8 |
|
1131 emax265 toSci 1.00E+8 -> 1.00E+8 |
|
1132 emax266 toSci 1.00E+9 -> 1.00E+9 |
|
1133 emax267 toSci 1.00E+10 -> 1.00E+10 |
|
1134 emax268 toSci 1.00E+11 -> Infinity Overflow Inexact Rounded |
|
1135 emax270 toSci 9.99E-21 -> 0E-18 Underflow Subnormal Inexact Rounded Clamped |
|
1136 emax271 toSci 9.99E-11 -> 9.99E-11 Subnormal |
|
1137 emax272 toSci 9.99E-10 -> 9.99E-10 |
|
1138 emax273 toSci 9.99E-9 -> 9.99E-9 |
|
1139 emax274 toSci 9.99E-8 -> 9.99E-8 |
|
1140 emax275 toSci 9.99E+8 -> 9.99E+8 |
|
1141 emax276 toSci 9.99E+9 -> 9.99E+9 |
|
1142 emax277 toSci 9.99E+10 -> 9.99E+10 |
|
1143 emax278 toSci 9.99E+11 -> Infinity Overflow Inexact Rounded |
|
1144 |
|
1145 maxexponent: 99 |
|
1146 minexponent: -99 |
|
1147 emax280 toSci 1E-120 -> 0E-107 Underflow Subnormal Inexact Rounded Clamped |
|
1148 emax281 toSci 1E-100 -> 1E-100 Subnormal |
|
1149 emax282 toSci 1E-99 -> 1E-99 |
|
1150 emax283 toSci 1E-98 -> 1E-98 |
|
1151 emax284 toSci 1E+98 -> 1E+98 |
|
1152 emax285 toSci 1E+99 -> 1E+99 |
|
1153 emax286 toSci 1E+100 -> Infinity Overflow Inexact Rounded |
|
1154 |
|
1155 maxexponent: 999 |
|
1156 minexponent: -999 |
|
1157 emax291 toSci 1E-1000 -> 1E-1000 Subnormal |
|
1158 emax292 toSci 1E-999 -> 1E-999 |
|
1159 emax293 toSci 1E+999 -> 1E+999 |
|
1160 emax294 toSci 1E+1000 -> Infinity Overflow Inexact Rounded |
|
1161 maxexponent: 9999 |
|
1162 minexponent: -9999 |
|
1163 emax301 toSci 1E-10000 -> 1E-10000 Subnormal |
|
1164 emax302 toSci 1E-9999 -> 1E-9999 |
|
1165 emax303 toSci 1E+9999 -> 1E+9999 |
|
1166 emax304 toSci 1E+10000 -> Infinity Overflow Inexact Rounded |
|
1167 maxexponent: 99999 |
|
1168 minexponent: -99999 |
|
1169 emax311 toSci 1E-100000 -> 1E-100000 Subnormal |
|
1170 emax312 toSci 1E-99999 -> 1E-99999 |
|
1171 emax313 toSci 1E+99999 -> 1E+99999 |
|
1172 emax314 toSci 1E+100000 -> Infinity Overflow Inexact Rounded |
|
1173 maxexponent: 999999 |
|
1174 minexponent: -999999 |
|
1175 emax321 toSci 1E-1000000 -> 1E-1000000 Subnormal |
|
1176 emax322 toSci 1E-999999 -> 1E-999999 |
|
1177 emax323 toSci 1E+999999 -> 1E+999999 |
|
1178 emax324 toSci 1E+1000000 -> Infinity Overflow Inexact Rounded |
|
1179 maxexponent: 9999999 |
|
1180 minexponent: -9999999 |
|
1181 emax331 toSci 1E-10000000 -> 1E-10000000 Subnormal |
|
1182 emax332 toSci 1E-9999999 -> 1E-9999999 |
|
1183 emax333 toSci 1E+9999999 -> 1E+9999999 |
|
1184 emax334 toSci 1E+10000000 -> Infinity Overflow Inexact Rounded |
|
1185 maxexponent: 99999999 |
|
1186 minexponent: -99999999 |
|
1187 emax341 toSci 1E-100000000 -> 1E-100000000 Subnormal |
|
1188 emax342 toSci 1E-99999999 -> 1E-99999999 |
|
1189 emax343 toSci 1E+99999999 -> 1E+99999999 |
|
1190 emax344 toSci 1E+100000000 -> Infinity Overflow Inexact Rounded |
|
1191 |
|
1192 maxexponent: 999999999 |
|
1193 minexponent: -999999999 |
|
1194 emax347 toSci 1E-1000000008 -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
1195 emax348 toSci 1E-1000000007 -> 1E-1000000007 Subnormal |
|
1196 emax349 toSci 1E-1000000000 -> 1E-1000000000 Subnormal |
|
1197 emax350 toSci 1E-999999999 -> 1E-999999999 |
|
1198 emax351 toSci 1E+999999999 -> 1E+999999999 |
|
1199 emax352 toSci 1E+1000000000 -> Infinity Overflow Inexact Rounded |
|
1200 emax353 toSci 1.000E-1000000000 -> 1.000E-1000000000 Subnormal |
|
1201 emax354 toSci 1.000E-999999999 -> 1.000E-999999999 |
|
1202 emax355 toSci 1.000E+999999999 -> 1.000E+999999999 |
|
1203 emax356 toSci 1.000E+1000000000 -> Infinity Overflow Inexact Rounded |
|
1204 emax357 toSci 1.001E-1000000008 -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
1205 emax358 toSci 1.001E-1000000007 -> 1E-1000000007 Subnormal Inexact Rounded Underflow |
|
1206 emax359 toSci 1.001E-1000000000 -> 1.001E-1000000000 Subnormal |
|
1207 emax360 toSci 1.001E-999999999 -> 1.001E-999999999 |
|
1208 emax361 toSci 1.001E+999999999 -> 1.001E+999999999 |
|
1209 emax362 toSci 1.001E+1000000000 -> Infinity Overflow Inexact Rounded |
|
1210 emax363 toSci 9.000E-1000000000 -> 9.000E-1000000000 Subnormal |
|
1211 emax364 toSci 9.000E-999999999 -> 9.000E-999999999 |
|
1212 emax365 toSci 9.000E+999999999 -> 9.000E+999999999 |
|
1213 emax366 toSci 9.000E+1000000000 -> Infinity Overflow Inexact Rounded |
|
1214 emax367 toSci 9.999E-1000000009 -> 0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
1215 emax368 toSci 9.999E-1000000008 -> 1E-1000000007 Underflow Subnormal Inexact Rounded |
|
1216 emax369 toSci 9.999E-1000000007 -> 1.0E-1000000006 Underflow Subnormal Inexact Rounded |
|
1217 emax370 toSci 9.999E-1000000000 -> 9.999E-1000000000 Subnormal |
|
1218 emax371 toSci 9.999E-999999999 -> 9.999E-999999999 |
|
1219 emax372 toSci 9.999E+999999999 -> 9.999E+999999999 |
|
1220 |
|
1221 emax373 toSci 9.999E+1000000000 -> Infinity Overflow Inexact Rounded |
|
1222 emax374 toSci -1E-1000000000 -> -1E-1000000000 Subnormal |
|
1223 emax375 toSci -1E-999999999 -> -1E-999999999 |
|
1224 emax376 toSci -1E+999999999 -> -1E+999999999 |
|
1225 emax377 toSci -1E+1000000000 -> -Infinity Overflow Inexact Rounded |
|
1226 emax378 toSci -1.000E-1000000000 -> -1.000E-1000000000 Subnormal |
|
1227 emax379 toSci -1.000E-999999999 -> -1.000E-999999999 |
|
1228 emax380 toSci -1.000E+999999999 -> -1.000E+999999999 |
|
1229 emax381 toSci -1.000E+1000000000 -> -Infinity Overflow Inexact Rounded |
|
1230 emax382 toSci -1.001E-1000000008 -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
1231 emax383 toSci -1.001E-999999999 -> -1.001E-999999999 |
|
1232 emax384 toSci -1.001E+999999999 -> -1.001E+999999999 |
|
1233 emax385 toSci -1.001E+1000000000 -> -Infinity Overflow Inexact Rounded |
|
1234 emax386 toSci -9.000E-1000000123 -> -0E-1000000007 Underflow Subnormal Inexact Rounded Clamped |
|
1235 emax387 toSci -9.000E-999999999 -> -9.000E-999999999 |
|
1236 emax388 toSci -9.000E+999999999 -> -9.000E+999999999 |
|
1237 emax389 toSci -9.000E+1000000000 -> -Infinity Overflow Inexact Rounded |
|
1238 emax390 toSci -9.999E-1000000008 -> -1E-1000000007 Underflow Subnormal Inexact Rounded |
|
1239 emax391 toSci -9.999E-999999999 -> -9.999E-999999999 |
|
1240 emax392 toSci -9.999E+999999999 -> -9.999E+999999999 |
|
1241 emax393 toSci -9.999E+1000000000 -> -Infinity Overflow Inexact Rounded |
|
1242 |
|
1243 -- Now check 854 rounding of subnormals and proper underflow to 0 |
|
1244 precision: 5 |
|
1245 maxExponent: 999 |
|
1246 minexponent: -999 |
|
1247 rounding: half_even |
|
1248 |
|
1249 emax400 toSci 1.0000E-999 -> 1.0000E-999 |
|
1250 emax401 toSci 0.1E-999 -> 1E-1000 Subnormal |
|
1251 emax402 toSci 0.1000E-999 -> 1.000E-1000 Subnormal |
|
1252 emax403 toSci 0.0100E-999 -> 1.00E-1001 Subnormal |
|
1253 emax404 toSci 0.0010E-999 -> 1.0E-1002 Subnormal |
|
1254 emax405 toSci 0.0001E-999 -> 1E-1003 Subnormal |
|
1255 emax406 toSci 0.00010E-999 -> 1E-1003 Subnormal Rounded |
|
1256 emax407 toSci 0.00013E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
|
1257 emax408 toSci 0.00015E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1258 emax409 toSci 0.00017E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1259 emax410 toSci 0.00023E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1260 emax411 toSci 0.00025E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1261 emax412 toSci 0.00027E-999 -> 3E-1003 Underflow Subnormal Inexact Rounded |
|
1262 emax413 toSci 0.000149E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
|
1263 emax414 toSci 0.000150E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1264 emax415 toSci 0.000151E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1265 emax416 toSci 0.000249E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1266 emax417 toSci 0.000250E-999 -> 2E-1003 Underflow Subnormal Inexact Rounded |
|
1267 emax418 toSci 0.000251E-999 -> 3E-1003 Underflow Subnormal Inexact Rounded |
|
1268 emax419 toSci 0.00009E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
|
1269 emax420 toSci 0.00005E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1270 emax421 toSci 0.00003E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1271 emax422 toSci 0.000009E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1272 emax423 toSci 0.000005E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1273 emax424 toSci 0.000003E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1274 |
|
1275 emax425 toSci 0.001049E-999 -> 1.0E-1002 Underflow Subnormal Inexact Rounded |
|
1276 emax426 toSci 0.001050E-999 -> 1.0E-1002 Underflow Subnormal Inexact Rounded |
|
1277 emax427 toSci 0.001051E-999 -> 1.1E-1002 Underflow Subnormal Inexact Rounded |
|
1278 emax428 toSci 0.001149E-999 -> 1.1E-1002 Underflow Subnormal Inexact Rounded |
|
1279 emax429 toSci 0.001150E-999 -> 1.2E-1002 Underflow Subnormal Inexact Rounded |
|
1280 emax430 toSci 0.001151E-999 -> 1.2E-1002 Underflow Subnormal Inexact Rounded |
|
1281 |
|
1282 emax432 toSci 0.010049E-999 -> 1.00E-1001 Underflow Subnormal Inexact Rounded |
|
1283 emax433 toSci 0.010050E-999 -> 1.00E-1001 Underflow Subnormal Inexact Rounded |
|
1284 emax434 toSci 0.010051E-999 -> 1.01E-1001 Underflow Subnormal Inexact Rounded |
|
1285 emax435 toSci 0.010149E-999 -> 1.01E-1001 Underflow Subnormal Inexact Rounded |
|
1286 emax436 toSci 0.010150E-999 -> 1.02E-1001 Underflow Subnormal Inexact Rounded |
|
1287 emax437 toSci 0.010151E-999 -> 1.02E-1001 Underflow Subnormal Inexact Rounded |
|
1288 |
|
1289 emax440 toSci 0.10103E-999 -> 1.010E-1000 Underflow Subnormal Inexact Rounded |
|
1290 emax441 toSci 0.10105E-999 -> 1.010E-1000 Underflow Subnormal Inexact Rounded |
|
1291 emax442 toSci 0.10107E-999 -> 1.011E-1000 Underflow Subnormal Inexact Rounded |
|
1292 emax443 toSci 0.10113E-999 -> 1.011E-1000 Underflow Subnormal Inexact Rounded |
|
1293 emax444 toSci 0.10115E-999 -> 1.012E-1000 Underflow Subnormal Inexact Rounded |
|
1294 emax445 toSci 0.10117E-999 -> 1.012E-1000 Underflow Subnormal Inexact Rounded |
|
1295 |
|
1296 emax450 toSci 1.10730E-1000 -> 1.107E-1000 Underflow Subnormal Inexact Rounded |
|
1297 emax451 toSci 1.10750E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
|
1298 emax452 toSci 1.10770E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
|
1299 emax453 toSci 1.10830E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
|
1300 emax454 toSci 1.10850E-1000 -> 1.108E-1000 Underflow Subnormal Inexact Rounded |
|
1301 emax455 toSci 1.10870E-1000 -> 1.109E-1000 Underflow Subnormal Inexact Rounded |
|
1302 |
|
1303 -- make sure sign OK |
|
1304 emax456 toSci -0.10103E-999 -> -1.010E-1000 Underflow Subnormal Inexact Rounded |
|
1305 emax457 toSci -0.10105E-999 -> -1.010E-1000 Underflow Subnormal Inexact Rounded |
|
1306 emax458 toSci -0.10107E-999 -> -1.011E-1000 Underflow Subnormal Inexact Rounded |
|
1307 emax459 toSci -0.10113E-999 -> -1.011E-1000 Underflow Subnormal Inexact Rounded |
|
1308 emax460 toSci -0.10115E-999 -> -1.012E-1000 Underflow Subnormal Inexact Rounded |
|
1309 emax461 toSci -0.10117E-999 -> -1.012E-1000 Underflow Subnormal Inexact Rounded |
|
1310 |
|
1311 -- '999s' cases |
|
1312 emax464 toSci 999999E-999 -> 1.0000E-993 Inexact Rounded |
|
1313 emax465 toSci 99999.0E-999 -> 9.9999E-995 Rounded |
|
1314 emax466 toSci 99999.E-999 -> 9.9999E-995 |
|
1315 emax467 toSci 9999.9E-999 -> 9.9999E-996 |
|
1316 emax468 toSci 999.99E-999 -> 9.9999E-997 |
|
1317 emax469 toSci 99.999E-999 -> 9.9999E-998 |
|
1318 emax470 toSci 9.9999E-999 -> 9.9999E-999 |
|
1319 emax471 toSci 0.99999E-999 -> 1.0000E-999 Underflow Subnormal Inexact Rounded |
|
1320 emax472 toSci 0.099999E-999 -> 1.000E-1000 Underflow Subnormal Inexact Rounded |
|
1321 emax473 toSci 0.0099999E-999 -> 1.00E-1001 Underflow Subnormal Inexact Rounded |
|
1322 emax474 toSci 0.00099999E-999 -> 1.0E-1002 Underflow Subnormal Inexact Rounded |
|
1323 emax475 toSci 0.000099999E-999 -> 1E-1003 Underflow Subnormal Inexact Rounded |
|
1324 emax476 toSci 0.0000099999E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1325 emax477 toSci 0.00000099999E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1326 emax478 toSci 0.000000099999E-999 -> 0E-1003 Underflow Subnormal Inexact Rounded Clamped |
|
1327 |
|
1328 -- Exponents with insignificant leading zeros |
|
1329 precision: 16 |
|
1330 maxExponent: 999999999 |
|
1331 minexponent: -999999999 |
|
1332 basx1001 toSci 1e999999999 -> 1E+999999999 |
|
1333 basx1002 toSci 1e0999999999 -> 1E+999999999 |
|
1334 basx1003 toSci 1e00999999999 -> 1E+999999999 |
|
1335 basx1004 toSci 1e000999999999 -> 1E+999999999 |
|
1336 basx1005 toSci 1e000000000000999999999 -> 1E+999999999 |
|
1337 basx1006 toSci 1e000000000001000000007 -> Infinity Overflow Inexact Rounded |
|
1338 basx1007 toSci 1e-999999999 -> 1E-999999999 |
|
1339 basx1008 toSci 1e-0999999999 -> 1E-999999999 |
|
1340 basx1009 toSci 1e-00999999999 -> 1E-999999999 |
|
1341 basx1010 toSci 1e-000999999999 -> 1E-999999999 |
|
1342 basx1011 toSci 1e-000000000000999999999 -> 1E-999999999 |
|
1343 basx1012 toSci 1e-000000000001000000007 -> 1E-1000000007 Subnormal |
|
1344 |
|
1345 -- Edge cases for int32 exponents... |
|
1346 basx1021 tosci 1e+2147483649 -> Infinity Overflow Inexact Rounded |
|
1347 basx1022 tosci 1e+2147483648 -> Infinity Overflow Inexact Rounded |
|
1348 basx1023 tosci 1e+2147483647 -> Infinity Overflow Inexact Rounded |
|
1349 basx1024 tosci 1e-2147483647 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped |
|
1350 basx1025 tosci 1e-2147483648 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped |
|
1351 basx1026 tosci 1e-2147483649 -> 0E-1000000014 Underflow Subnormal Inexact Rounded Clamped |
|
1352 -- same unbalanced |
|
1353 precision: 7 |
|
1354 maxExponent: 96 |
|
1355 minexponent: -95 |
|
1356 basx1031 tosci 1e+2147483649 -> Infinity Overflow Inexact Rounded |
|
1357 basx1032 tosci 1e+2147483648 -> Infinity Overflow Inexact Rounded |
|
1358 basx1033 tosci 1e+2147483647 -> Infinity Overflow Inexact Rounded |
|
1359 basx1034 tosci 1e-2147483647 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped |
|
1360 basx1035 tosci 1e-2147483648 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped |
|
1361 basx1036 tosci 1e-2147483649 -> 0E-101 Underflow Subnormal Inexact Rounded Clamped |
|
1362 |
|
1363 -- check for double-rounded subnormals |
|
1364 precision: 5 |
|
1365 maxexponent: 79 |
|
1366 minexponent: -79 |
|
1367 basx1041 toSci 1.52444E-80 -> 1.524E-80 Inexact Rounded Subnormal Underflow |
|
1368 basx1042 toSci 1.52445E-80 -> 1.524E-80 Inexact Rounded Subnormal Underflow |
|
1369 basx1043 toSci 1.52446E-80 -> 1.524E-80 Inexact Rounded Subnormal Underflow |
|
1370 |
|
1371 -- clamped zeros [see also clamp.decTest] |
|
1372 precision: 34 |
|
1373 maxExponent: 6144 |
|
1374 minExponent: -6143 |
|
1375 |
|
1376 basx1061 apply 0e+10000 -> 0E+6144 Clamped |
|
1377 basx1062 apply 0e-10000 -> 0E-6176 Clamped |
|
1378 basx1063 apply -0e+10000 -> -0E+6144 Clamped |
|
1379 basx1064 apply -0e-10000 -> -0E-6176 Clamped |
|
1380 |
|
1381 precision: 16 |
|
1382 maxExponent: 384 |
|
1383 minExponent: -383 |
|
1384 |
|
1385 basx1065 apply 0e+10000 -> 0E+384 Clamped |
|
1386 basx1066 apply 0e-10000 -> 0E-398 Clamped |
|
1387 basx1067 apply -0e+10000 -> -0E+384 Clamped |
|
1388 basx1068 apply -0e-10000 -> -0E-398 Clamped |
|
1389 |
|
1390 -- same with IEEE clamping |
|
1391 clamp: 1 |
|
1392 |
|
1393 precision: 34 |
|
1394 maxExponent: 6144 |
|
1395 minExponent: -6143 |
|
1396 |
|
1397 basx1071 apply 0e+10000 -> 0E+6111 Clamped |
|
1398 basx1072 apply 0e-10000 -> 0E-6176 Clamped |
|
1399 basx1073 apply -0e+10000 -> -0E+6111 Clamped |
|
1400 basx1074 apply -0e-10000 -> -0E-6176 Clamped |
|
1401 |
|
1402 precision: 16 |
|
1403 maxExponent: 384 |
|
1404 minExponent: -383 |
|
1405 |
|
1406 basx1075 apply 0e+10000 -> 0E+369 Clamped |
|
1407 basx1076 apply 0e-10000 -> 0E-398 Clamped |
|
1408 basx1077 apply -0e+10000 -> -0E+369 Clamped |
|
1409 basx1078 apply -0e-10000 -> -0E-398 Clamped |
|
1410 |
|
1411 |