Re: Cube Root of Negative Numbers: ERROR
- From: John Machin <sjmachin lexicon net>
- To: Leonard Mada <discoleo gmx net>
- Cc: gnumeric-list gnome org
- Subject: Re: Cube Root of Negative Numbers: ERROR
- Date: Fri, 23 Feb 2007 09:08:27 +1100
On 23/02/2007 5:41 AM, Leonard Mada wrote:
*The Cube Root of Negative Numbers returns an ERROR*
It seems that gnumeric cannot calculate the cube root of negative
numbers. I have tested a couple of programs and found these results:
=POWER(-27, 1/3) returns
That is *not* attempting to calculate the cube root of a negative
number. It is attempting to calculate raising a negative number to some
fractional power.
Note: if the software is using 64-bit IEEE754 floating point, 1/3 will
be 0.333....3331 (decimal) -- it can't be represented exactly. In fact
for all odd n greater than 1, 1/n can't be represented exactly in binary
floating point with any number of bits of precision.
#VALUE! in OOo 2.1
#NUM! in gnumeric 1.7.6
"-3" in MS Excel XP => TRUE
Does it *really* return "-3"? I've just tried it with Excel 2003, and
what it wrote to disk was the binary floating point equivalent of
-2.9999999999999996 i.e. one bit out in the mantissa.
R returns an ERROR, too: (-27)^(1/3) returns "NaN".
Python raises an exception: "ValueError: negative number cannot be
raised to a fractional power"
C: It is written in K&R 2nd edition on page 251 re the library function
pow(x, y): "A domain error occurs if x == 0 and y <= 0, or if x < 0 and
y is not an integer."
Seems, a lot of software gets it wrong, though Excel manages to calculate it.
Ah yes, but everything is not as it seems ;-)
This reminds me of the joke about the proud mother watching the local
militia regiment march by on some festive occasion and exclaiming "Look!
My Billy Bob's the only one marching in step!".
I hope therefore, that this gets corrected in gnumeric, too. Should I post it as a BUG?
Yes. But don't bother the gnumeric crew. Send it to
billybob gates microsoft com
*Stop press* Don't even bother with that. I've just looked up the ECMA
standard for "office open XML" (i.e. Microsoft Office 2007 XML): the
POWER function is described in part 4 section 3.17.7.252. I quote:
"However if ... The value of x is negative and y is not a whole number,
#NUM! is returned". Looks like the drill sergeant gave Billy Bob a clip
around the ears :-)
HTH,
John
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]