Author |
Message |
Dere #1 / 7
|
 Problems regarding "Round" function
In my software I've used syntax like: X=round(I/2, 0) I expect that if I = 19, then X will become 10 as I/2 is 9.5 However the software give me the X as 9. What should i do if I wan to have X = 10? Regards, Derek
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
 |
Dere #2 / 7
|
 Problems regarding "Round" function
I would like to activate the character table, which is a software comes with MS windows. What string should i add into the code so to activate it? regards, Derek
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
 |
Ja #3 / 7
|
 Problems regarding "Round" function
released on Wed, 6 Dec 2000 15:43:15 +0800 bearing the following fruit: Quote: >In my software I've used syntax like: >X=round(I/2, 0) >I expect that if I = 19, then X will become 10 as I/2 is 9.5 >However the software give me the X as 9. >What should i do if I wan to have X = 10?
Round(19/2,0) = 10 on my machine. However Round(19\2,0) = 9 J
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
 |
Stephen Brooke #4 / 7
|
 Problems regarding "Round" function
I agree with Jan. Have a look in help for / and \, they're not the same. -- Stephen Brooker
"Windows has detected that you have moved your mouse. You must restart for this change to take effect."
Quote: > In my software I've used syntax like: > X=round(I/2, 0) > I expect that if I = 19, then X will become 10 as I/2 is 9.5 > However the software give me the X as 9. > What should i do if I wan to have X = 10? > Regards, > Derek
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
 |
Michael William #5 / 7
|
 Problems regarding "Round" function
Visual Basic uses "bankers" rounding. This means that when the fractional part is exactly 0.5 it "rounds up" if the whole part is odd and it "rounds down" if the whole part is even. This minimises "unfair bias". For example, try: Print Round(9.5, 0) Print Round(10.5, 0) Since you are only dealing in "whole number" answers then you can use the Int function instead. The Int function does not use this "bankers" stuff and when the fractional part is exactly 0.5 then it always rounds down, regardless of whether the "whole" part is odd or even. In your case you want to always "round up". You can do this (in your case using either method) by simply adding a tiny bit to the original number in your equation (unless there is an easier way to do this that I have missed, which would not be unusual!). Mike
Quote: > In my software I've used syntax like: > X=round(I/2, 0) > I expect that if I = 19, then X will become 10 as I/2 is 9.5 > However the software give me the X as 9. > What should i do if I wan to have X = 10? > Regards, > Derek
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
 |
Michael William #6 / 7
|
 Problems regarding "Round" function
Shell "charmap", vbNormalFocus
Quote: > I would like to activate the character table, which is a software comes with > MS windows. What string should i add into the code so to activate it? > regards, > Derek
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
 |
Greg #7 / 7
|
 Problems regarding "Round" function
It will be a hard work. I think you should check that the fix(number) and the int(number) do not return the same number for -9.5. You should also work with \.
|
Wed, 18 Jun 1902 08:00:00 GMT |
|
|