midrange.com code scratchpad |
Name:
Rounding error?
|
Scriptlanguage:
Plain Text
|
Tabwidth:
4
|
Date:
06/17/2025 06:27:36 pm
|
IP:
Logged
|
|
Description:
The user was to lazy to give a description
|
Code:
- **free
-
- ctl-opt dftactgrp(*no);
-
- dcl-s digits1 zoned(20:1) inz(12345678.9);
- dcl-s digits2 zoned(20:2) inz(1234567.89);
- dcl-s digits3 zoned(20:3) inz(123456.789);
- dcl-s digits4 zoned(20:4) inz(12345.6789);
- dcl-s digits5 zoned(20:5) inz(1234.56789);
- dcl-s digits6 zoned(20:6) inz(123.456789);
-
- dcl-s result int(20);
-
- result = digits1 * (10 ** %decpos(digits1));
- // result = 123456789
- result = digits2 * (10 ** %decpos(digits2));
- // result = 123456788 <-----
- result = digits3 * (10 ** %decpos(digits3));
- // result = 123456789
- result = digits4 * (10 ** %decpos(digits4));
- // result = 123456789
- result = digits5 * (10 ** %decpos(digits5));
- // result = 123456789
- result = digits6 * (10 ** %decpos(digits6));
- // result = 123456789
-
- result = digits1 * %int(10 ** %decpos(digits1));
- // result = 123456789
- result = digits2 * %int(10 ** %decpos(digits2));
- // result = 123456789
- result = digits3 * %int(10 ** %decpos(digits3));
- // result = 123456789
- result = digits4 * %int(10 ** %decpos(digits4));
- // result = 123456789
- result = digits5 * %int(10 ** %decpos(digits5));
- // result = 123456789
- result = digits6 * %int(10 ** %decpos(digits6));
- // result = 123456789
-
- *inlr = *on;
-
|
|
|