round not behaving [message #46002] |
Thu, 27 October 2005 12:43 |
psbeps
Messages: 8 Registered: March 2005
|
Junior Member |
|
|
I am trying to round to the nearest tenth, and it works most of the
time. It doesn't work if the value is 5.05 or 5.55, which get rounded
to 5.0 and 5.5, respectively, instead of 5.1 and 5.6. When I type it
into the command line, it works as expected, but not when I run the
entire program.
Here is the code (which I have divided into steps to see where it's
going wrong--it still doesn't work if I do the same thing in one line
of code):
;** Round off the value.
help, value
print, value
temp = value * 10.0
help, temp
print, temp
rounded_value = ROUND(temp)
help, rounded_value
print, rounded_value
value = rounded_value/10.0
help, value
print, value
Here is the output:
VALUE FLOAT = 5.05000
5.05000
TEMP FLOAT = 50.5000
50.5000
ROUNDED_VALUE LONG = 50
50
VALUE FLOAT = 5.00000
5.00000
Why does it not round properly?
Jill
|
|
|