Comrades:
I am trying to round a double data type to 4 decimal places. Here is an
example of the code I am testing:
SET VAR VMAX DOUBLE = .032
SET VAR VMIN DOUBLE = .0291
SET VAR VDIFF DOUBLE = (((.VMAX - .VMIN) * 10000) / 2)
SET VAR VAINT = (AINT(.VDIFF))
SET VAR VANINT = (ANINT(.VDIFF))
SET VAR VINT = (INT(.VDIFF))
SET VAR VNINT = (NINT(.VDIFF))
SHOW VAR %INT%
The intent is to find the difference between two numbers and determine half
of the result by either multiplying by .5 or dividing by 2. I am raising
the result by 10,000 so that I can use the ANINT function to round off the
decimal point.
The result of the third instruction above is 14.5. According to the way I
read the ANINT function the fifth instruction should give me an answer of 15
since VDIFF is equal to 14.5. The result I want is 15 but the answer I get
is 14 indicating that the value was rounded down. I am not using the BRND
function but it almost acts like it is.
Is there something I'm missing or is there a better way to go about this?
Version: RBWIN 6.5++ on NT Workstation 4.0
Thanks for your help.
Mike Ramsour
Technology Department
AK Steel Coshocton Works
17400 SR 16
Coshocton, OH 43812-0190
Voice: (740) 829-4340
FAX : (740) 829-4211