------------------------------------------------------------------------ -- trim0.decTest -- remove insignificant trailing zeros (simplified) -- -- Copyright (c) IBM Corporation, 2003, 2008. All rights reserved. -- ------------------------------------------------------------------------ -- Please see the document "General Decimal Arithmetic Testcases" -- -- at http://www2.hursley.ibm.com/decimal for the description of -- -- these testcases. -- -- -- -- These testcases are experimental ('beta' versions), and they -- -- may contain errors. They are offered on an as-is basis. In -- -- particular, achieving the same results as the tests here is not -- -- a guarantee that an implementation complies with any Standard -- -- or specification. The tests are not exhaustive. -- -- -- -- Please send comments, suggestions, and corrections to the author: -- -- Mike Cowlishaw, IBM Fellow -- -- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK -- -- mfc@uk.ibm.com -- ------------------------------------------------------------------------ version: 2.58 extended: 0 precision: 9 rounding: half_up maxExponent: 999 minexponent: -999 trm001 trim '1' -> '1' trm002 trim '-1' -> '-1' trm003 trim '1.00' -> '1' trm004 trim '-1.00' -> '-1' trm005 trim '0' -> '0' trm006 trim '0.00' -> '0' trm007 trim '00.0' -> '0' trm008 trim '00.00' -> '0' trm009 trim '00' -> '0' trm010 trim '-2' -> '-2' trm011 trim '2' -> '2' trm012 trim '-2.00' -> '-2' trm013 trim '2.00' -> '2' trm014 trim '-0' -> '0' trm015 trim '-0.00' -> '0' trm016 trim '-00.0' -> '0' trm017 trim '-00.00' -> '0' trm018 trim '-00' -> '0' trm019 trim '0E+5' -> '0' trm020 trim '-0E+1' -> '0' trm030 trim '+0.1' -> '0.1' trm031 trim '-0.1' -> '-0.1' trm032 trim '+0.01' -> '0.01' trm033 trim '-0.01' -> '-0.01' trm034 trim '+0.001' -> '0.001' trm035 trim '-0.001' -> '-0.001' trm036 trim '+0.000001' -> '0.000001' trm037 trim '-0.000001' -> '-0.000001' trm038 trim '+0.000000000001' -> '1E-12' trm039 trim '-0.000000000001' -> '-1E-12' trm041 trim 1.1 -> 1.1 trm042 trim 1.10 -> 1.1 trm043 trim 1.100 -> 1.1 trm044 trim 1.110 -> 1.11 trm045 trim -1.1 -> -1.1 trm046 trim -1.10 -> -1.1 trm047 trim -1.100 -> -1.1 trm048 trim -1.110 -> -1.11 trm049 trim 9.9 -> 9.9 trm050 trim 9.90 -> 9.9 trm051 trim 9.900 -> 9.9 trm052 trim 9.990 -> 9.99 trm053 trim -9.9 -> -9.9 trm054 trim -9.90 -> -9.9 trm055 trim -9.900 -> -9.9 trm056 trim -9.990 -> -9.99 -- some insignificant trailing fractional zeros trm060 trim 10.0 -> 10 trm061 trim 10.00 -> 10 trm062 trim 100.0 -> 100 trm063 trim 100.00 -> 100 trm064 trim 1.1000E+3 -> 1100 trm065 trim 1.10000E+3 -> 1100 trm066 trim -10.0 -> -10 trm067 trim -10.00 -> -10 trm068 trim -100.0 -> -100 trm069 trim -100.00 -> -100 trm070 trim -1.1000E+3 -> -1100 trm071 trim -1.10000E+3 -> -1100 -- some insignificant trailing zeros with positive exponent trm080 trim 10E+1 -> 1E+2 trm081 trim 100E+1 -> 1E+3 trm082 trim 1.0E+2 -> 1E+2 trm083 trim 1.0E+3 -> 1E+3 trm084 trim 1.1E+3 -> 1.1E+3 trm085 trim 1.00E+3 -> 1E+3 trm086 trim 1.10E+3 -> 1.1E+3 trm087 trim -10E+1 -> -1E+2 trm088 trim -100E+1 -> -1E+3 trm089 trim -1.0E+2 -> -1E+2 trm090 trim -1.0E+3 -> -1E+3 trm091 trim -1.1E+3 -> -1.1E+3 trm092 trim -1.00E+3 -> -1E+3 trm093 trim -1.10E+3 -> -1.1E+3 -- some significant trailing zeros trm100 trim 11 -> 11 trm101 trim 10 -> 10 trm102 trim 10. -> 10 trm103 trim 1.1E+1 -> 11 trm104 trim 1.0E+1 -> 10 trm105 trim 1.10E+2 -> 110 trm106 trim 1.00E+2 -> 100 trm107 trim 1.100E+3 -> 1100 trm108 trim 1.000E+3 -> 1000 trm109 trim 1.000000E+6 -> 1000000 trm110 trim -11 -> -11 trm111 trim -10 -> -10 trm112 trim -10. -> -10 trm113 trim -1.1E+1 -> -11 trm114 trim -1.0E+1 -> -10 trm115 trim -1.10E+2 -> -110 trm116 trim -1.00E+2 -> -100 trm117 trim -1.100E+3 -> -1100 trm118 trim -1.000E+3 -> -1000 trm119 trim -1.000000E+6 -> -1000000 -- Null test trm400 trim # -> ? Invalid_operation