xl Precision
Get Your Numbers Right

 

xlpROOT

Gets the specified root of a number, with up to 32,767 significant digits of precision.

Syntax

xlpROOT(num,rt,format_negative,format_thousands,format_currency,exponential_notation,maximum_significant_digits)

num Required. The base number for which a root will be found. Can be positive or negative. Can be a non-integer.
rt Required. The root for which num will be found. Can be positive or negative. Can be a non-integer.
format_negative Optional. Determines whether negatives are formatted with a leading hyphen ("-"), or parentheses ("()"). Set to 1 to format negatives with a leading hyphen. Set to 2 for parentheses. 1 by default.
format_thousands Optional. Determines whether thousands separators are included. Set to TRUE to include thousands separators. FALSE by default.
format_currency Optional. Determines whether currency symbol is included. Set to TRUE to include currency symbol. The currency symbol will be added either to the beginning or to the end of the result, whichever is appropriate for the locale. FALSE by default.
exponential_notation Optional. Determines whether result is formatted in exponential notation. Set to TRUE to format in exponential notation. FALSE by default.
maximum_significant_digits Optional. Determines the maximum number of significant digits to be returned. Default is the default number allowed by the edition of xlPrecision.

xlpROOT may be unable to resolve an answer if maximum_significant_digits is the same as, or very close to, the maximum number of significant digits allowed by the xlPrecision edition. If xlpROOT is unable to resolve an answer for this reason, it returns "#NUM!". For best results with xlpROOT, keep maximum_significant_digits at least 5 digits smaller than the maximum number of significant digits allowed by the xlPrecision edition. The default significant digits is always at least 5 digits smaller, so leaving maximum_significant_digits unspecified meets this recommendation.

restrict_input_lengths Optional. Returns "#NUM!" if the combined lengths of num and rt are more than half of the maximum number of significant digits allowed by the xlPrecision edition. Set to FALSE to disable this restriction, allowing num and rt to be as long as desired. TRUE by default.

xlpROOT may be unable to return a correct answer if the lengths of num and rt add up to more than half of the maximum number of significant digits allowed by your edition of xlPrecision. For example, since the Free Edition allows a maximum of 150 significant digits, restrict_input_lengths would limit num and rt to a combined total of 75 digits.

Use restrict_input_lengths with caution; setting restrict_input_lengths to FALSE may cause incorrect results.

This limitation applies to the total number of digits in num and rt, not just to the number of significant digits. For example, restrict_input_lengths counts the number "25000" as 5 digits, even though it has only 2 significant digits.

restrict_input_lengths is not affected by xlpROOT's maximum_significant_digits argument. For example, if you are using the Free Edition and set xlpROOT's maximum_significant_digits argument to 50, restrict_input_lengths still limits num and rt to a combined total of 75 digits (not 25), because 75 is half of the 150 maximum significant digits allowed by the Free Edition.

restrict_input_lengths does not affect how many significant digits xlpROOT can return. If the lengths of num and rt are within the limits, xlpROOT can return as many significant digits as desired.

If you are unsure how many significant digits your edition of xlPrecision allows, check Tools | xlPrecision 2.0 | About xlPrecision 2.0, or enter the formula "=xlpSD()" (without the quotes).

Remarks

Examples

Formula Description Result
=xlpROOT(8,3) 3 8 2
=xlpROOT(-8,3) 3 (-8) -2
=xlpROOT(8,-3) (-3) 8 0.5
=xlpROOT(8.5,3) 8.5 3 2.040827550958674035282891
Length of result depends on
xlPrecision SD edition.
=xlpROOT(8,3.5) 8 3.5 1.811447328527813343188346
Length of result depends on
xlPrecision SD edition.
=xlpROOT(-8,3.5) (-8) 3.5 #NUM!
If num is negative and rt is not an integer, there is no correct solution. See explanation above.
=xlpROOT(1.23,1.23) 1.23 1.23 1.18329651795922358113431
Length of result depends on
xlPrecision SD edition.
=xlpROOT(1.23,-1.23) 1.23 -1.23 0.84509671483243561579214
Length of result depends on
xlPrecision SD edition.
=xlpROOT(0.9,0.9) 0.9 0.9 0.88952537980417339103166
Length of result depends on
xlPrecision SD edition.
=xlpROOT(0.9,-0.9) 0.9 -0.9 1.12419501759482938880811
Length of result depends on
xlPrecision SD edition.
=xlpROOT(A1,A2,2,TRUE,TRUE) A2 A1, formatted with parentheses (if negative), thousands separators, and currency symbol.
=xlpROOT(A1,A2,,,,TRUE,100) A2 A1, formatted in exponential notation, and restricting the significant digits to a maximum of 100 to get faster calculation performance.