Open rtoy opened 3 months ago
Imported from SourceForge on 2024-07-03 02:08:07 Created by sur3 on 2017-07-07 12:31:56 Original: https://sourceforge.net/p/maxima/bugs/3318/#7f95
Maxima version: "5.38.1" Maxima build date: "2017-01-03 02:05:13" Host type: "x86_64-pc-linux-gnu" Lisp implementation type: "SBCL" Lisp implementation version: "1.3.11"
Imported from SourceForge on 2024-07-03 02:08:10 Created by kjak on 2017-07-07 19:24:02 Original: https://sourceforge.net/p/maxima/bugs/3318/#7399
round
seems to be working exactly as documented. As you showed, round
is documented to round multiples of 1/2 to the nearest even integer, so round(0.5)
rounding to 0 is correct (since 0 is even).
There are various conventions for rounding numbers in this case, such as rounding away from zero, rounding toward zero, rounding to the nearest even, etc. round
chooses to round to the nearest even integer.
Since there is no bug here and the rest of the report is a feature request, I'm closing this as wont-fix.
As for your feature request, feel free to bring it up on the mailing list. I'm really not sure if that behavior is desired by default, but you may be more likely to get a response there anyway.
Imported from SourceForge on 2024-07-03 02:08:06 Created by sur3 on 2017-07-07 12:30:26 Original: https://sourceforge.net/p/maxima/bugs/3318
Hi, the rounding function works incorrect:
This should return One and not Zero for 0.5. Also the description in the manual is confusing it says
Why should be only rounded to even integers and not odd integers!?
Also it would be nice if the rounding and truncate functions would distribute over complex number, I always have to do round(realpart(N))+round(imagpart(N))*%i which is an annoying syntax for a simple round(N).
Greetz Si