# $ZPOWER

## Synopsis

$ZPOWER(num,exponent)

### Parameters

Argument | Description |
---|---|

num | The number to be raised to a power. |

exponent | The exponent. |

## Description

$ZPOWER returns the value of the num parameter raised to the nth power.

This function performs the same operation as the Exponentiation operator (**). For details on valid parameter values and the value returned for specific combinations of parameter values, see Exponentiation Operator in the “Operators and Expressions” chapter of Using ObjectScript.

## Parameters

### num

The number to be raised to a power. It can be integer or floating point, negative, positive, or zero. It can be a standard InterSystems IRIS number or an IEEE double-precision binary floating-point number (a $DOUBLE number). It can be specified as a value, a variable, or an expression.

If you specify num as a quoted string, the string is parsed as a number, as described in “Strings as Numbers” in the “Data Types and Values” chapter of Using ObjectScript. The null string ("") and nonnumeric strings evaluate to zero.

### exponent

The exponent is a number that can be integer or floating point, negative, positive, or zero. It can be a standard InterSystems IRIS number or an IEEE double-precision binary floating-point number (a $DOUBLE number). It can be specified as a numeric or string value, a variable, or an expression.

If you specify exponent as a quoted string, the string is parsed as a number, as described in “Strings as Numbers” in the “Data Types and Values” chapter of Using ObjectScript. The null string ("") and nonnumeric strings evaluate to zero.

The following combinations of num and exponent result in an error:

If num is negative, exponent must be an integer. Otherwise an <ILLEGAL VALUE> error is generated.

If num is 0, exponent must be a positive number or zero. Otherwise an <ILLEGAL VALUE> or <DIVIDE> error is generated.

Large exponent values, such as $ZPOWER(9,153) may result in an overflow, generating a <MAXNUMBER> error, or may result in an underflow, returning 0. Which result occurs depends on whether num is greater than 1 (or -1), and whether exponent is positive or negative. A <MAXNUMBER> error occurs when an operation exceeds the largest number that InterSystems IRIS supports. For further details, refer to “Extremely Large Numbers” in the “Data Types and Values” chapter of Using ObjectScript.

For further details on valid parameter values and the value returned for specific combinations of parameter values, see Exponentiation Operator in the “Operators and Expressions” chapter of Using ObjectScript.

## Examples

The following example raises 2 to the first ten powers:

SET x=0 WHILE x < 10 { SET rtn=$ZPOWER(2,x) WRITE !,"The ",x," power of 2=",rtn SET x=x+1 }