A solution to calculation of odd roots of negative numbers with Calc
Regina Henschel
rb.henschel at t-online.de
Mon Jul 16 12:00:10 PDT 2012
Hi Marlon,
marlon orlando barahona alvarez schrieb:
> when we try to calculate the cube root of -27 (using the formula = POWER
> (A1, 1/3) -3 Calc should give us but gives us the message # VALUE!
> I solved the problem by modifying the formula as follows:
> =-POWER (-A1, 1/3) and this modification Calc can give us the correct
> answer.
If you often need it, you should use a named formula or a macro. You
should discuss that on the users mailing list or in a forum.
> Well I think to include this modification in Cal would take a decision
> block, suppose that the entries are "numbers, index". The terms of the
> decision would be:
> if (num <0 & 1/index% 2 = 1)
> The first one test if num is a negative number, the second one trys if
> index is an odd number, yet if an integer. If true both conditions would be
> used if the proposed amendment and was not used the normal function.
> If this helps please let me know. I hope not look like a fool. If Cal can
> do the calculation differently let me know as it does, thanks for
> everything.
You find the function as ScInterpreter::ScPow() in
sc\source\core\tool\interpr5.cxx. The exponent comes in as double. So
you first need to detect, whether this double value can be read as unit
fraction. There is a class fraction in tools/inc/tools/fract.hxx with a
constructor using a double. But I have not tested, whether it is suitable.
You need C++ knowledge for the core.
Kind regards
Regina
More information about the LibreOffice
mailing list