Description: ISODD is documented in the function wizard as > Returns TRUE if value is an odd integer The assumption, based on the text, is that ISODD returns FALSE if the value is not an odd integer. There are a few cases that are inconsistent with the body text: 1) `ISODD(7.262)` is TRUE, but `7.262` is not an integer 2) `ISODD("7.262")` is Err: 504 What is the intention of ISODD (and ISEVEN) ? If the behavior is expected, the documentation should be rewritten. Steps to Reproduce: Enter the formula `=ISODD(7.262)` in a cell Actual Results: TRUE Expected Results: FALSE Reproducible: Always User Profile Reset: Yes Additional Info: Excel notes the miscellaneous behavior in the docs: > If number is nonnumeric, ISODD returns the #VALUE! error value. Curiously, it does not use the word "integer" in the description: > Returns TRUE if number is odd, or FALSE if number is even. But it does include an example that makes the definition clear: > `ISODD(2.5)` "Checks whether 2.5 is odd" FALSE
The help documentation https://help.libreoffice.org/7.4/en-US/text/scalc/01/04060104.html?DbPAR=CALC#bm_id3156034 says "If Value is not an integer any digits after the decimal point are ignored. The sign of Value is also ignored." and that is what happens. Function Wizard wording is wrong.
Eike Rathke committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/7dca847f07c57591d20b6a2c618bfd8bfe62a09f Resolves: tdf#151165 Function Wizard: ISODD()/ISEVEN() truncate to integer It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.