This topic has not yet been rated - Rate this topic

# pow (<valarray>)

Visual Studio 2013

Operates on the elements of input valarrays and constants, returning a valarray whose elements are equal to a base specified either by the elements of an input valarray or a constant raised to an exponent specified either by the elements of an input valarray or a constant.

```template<class Type>
valarray<Type> pow(
const valarray<Type>& _Left,
const valarray<Type>& _Right
);
template<class Type>
valarray<Type> pow(
const valarray<Type>& _Left,
const Type& _Right
);
template<class Type>
valarray<Type> pow(
const Type& _Left,
const valarray<Type>& _Right
);
```
_Left

The input valarray whose elements supply the base for each element to be exponentiated.

_Right

The input valarray whose elements supply the power for each element to be exponentiated.

A valarray whose elements I are equal to:

• _Left [ I ] raised to the power _Right [ I ] for the first template function.

• _Left [ I ] raised to the power _Right for the second template function.

• _Left raised to the power _Right [ I ] for the third template function.

If _Left and _Right have a different number of elements, the result is undefined.

```#include <valarray>
#include <iostream>
#include <iomanip>

int main( )
{
using namespace std;
double pi = 3.14159265359;
int i;

valarray<double> vabase ( 6 );
for ( i = 0 ; i < 6 ; i++ )
vabase [ i ] =  i/2;
valarray<double> vaexp ( 6 );
for ( i = 0 ; i < 6 ; i++ )
vaexp [ i ] =  2 * i;

valarray<double> va2 ( 6 );

cout << "The initial valarray for the base is: ( ";
for ( i = 0 ; i < 6 ; i++ )
cout << vabase [ i ] << " ";
cout << ")." << endl;

cout << "The initial valarray for the exponent is: ( ";
for ( i = 0 ; i < 6 ; i++ )
cout << vaexp[ i ] << " ";
cout << ")." << endl;

va2 = pow ( vabase , vaexp );
cout << "The power of (n/2) * exp (2n) for n = 0 to n = 5 is: \n";
for ( i = 0 ; i < 6 ; i++ )
cout <<  "n = " << i << "\tgives " << va2 [ i ] << endl;
}
```
```The initial valarray for the base is: ( 0 0 1 1 2 2 ).
The initial valarray for the exponent is: ( 0 2 4 6 8 10 ).
The power of (n/2) * exp (2n) for n = 0 to n = 5 is:
n = 0   gives 1
n = 1   gives 0
n = 2   gives 1
n = 3   gives 1
n = 4   gives 256
n = 5   gives 1024```