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:
  1. **free
  2.  
  3. ctl-opt dftactgrp(*no);
  4.  
  5. dcl-s digits1 zoned(20:1) inz(12345678.9);
  6. dcl-s digits2 zoned(20:2) inz(1234567.89);
  7. dcl-s digits3 zoned(20:3) inz(123456.789);
  8. dcl-s digits4 zoned(20:4) inz(12345.6789);
  9. dcl-s digits5 zoned(20:5) inz(1234.56789);
  10. dcl-s digits6 zoned(20:6) inz(123.456789);
  11.  
  12. dcl-s result int(20);
  13.  
  14. result = digits1 * (10 ** %decpos(digits1));
  15. // result = 123456789
  16. result = digits2 * (10 ** %decpos(digits2));
  17. // result = 123456788  <-----
  18. result = digits3 * (10 ** %decpos(digits3));
  19. // result = 123456789
  20. result = digits4 * (10 ** %decpos(digits4));
  21. // result = 123456789
  22. result = digits5 * (10 ** %decpos(digits5));
  23. // result = 123456789
  24. result = digits6 * (10 ** %decpos(digits6));
  25. // result = 123456789
  26.  
  27. result = digits1 * %int(10 ** %decpos(digits1));
  28. // result = 123456789
  29. result = digits2 * %int(10 ** %decpos(digits2));
  30. // result = 123456789
  31. result = digits3 * %int(10 ** %decpos(digits3));
  32. // result = 123456789
  33. result = digits4 * %int(10 ** %decpos(digits4));
  34. // result = 123456789
  35. result = digits5 * %int(10 ** %decpos(digits5));
  36. // result = 123456789
  37. result = digits6 * %int(10 ** %decpos(digits6));
  38. // result = 123456789
  39.  
  40. *inlr = *on;
  41.  
© 2004-2019 by midrange.com generated in 0.005s valid xhtml & css