java.lang.Math.pow - Java pow method Example (Recursive and Loop Iterative)

Java.lang.Math.pow:

In this post, You will learn how to calculate the power of a number using java.lang.Math.pow method. 

In other words, Some interviews this questions is asked as write a program to find/calculate the power of a number in java programming language. In this tutorial, you'll learn to calculate the power of a number using a recursive function in Java.


The java.lang.Math.pow() is used to calculate a number raise to the power of some other number. This function takes two parameters and both are double type. This method returns the value of first parameter raised to the second parameter. Also pow() is a static method.



Java pow method - Java Program to Calculate the Power of a Number.PNG


Syntax:

public static double pow(double a, double b)


Parameter:

a : this parameter is the base
b : this parameter is the exponent.

Returns :

This method returns a.


Pow special scenarios:


There are some special cases or scenarios as listed below:

1. If the second parameter is positive or negative zero then the result will be 1.0.
2. If the second parameter is 1.0 then the result will be same as that of the first parameter.
3. If the second parameter is NaN then the result will also be NaN.
4. If the first argument is NaN and the second argument is nonzero, then the result is NaN.

There are many special cases on pow method but here described main important points and what is used regularly. For complete rules, refer the official page.


If we want to calculate the power of any number then we should use java.lang.Math.pow() method. For example, If want to calculate 2 power of 5, use pow() method that returns 32.

We will see the example programs on above cases.


math.pow() Java method with Example:

Below example to calculate the 2 power of 5. Please read the comments provided in the program for better understanding.


package examples.java.w3schools.math;

/**
* Example program on how to use Math.pow() method.
*
* @author java-w3schools
*
*/
public class PowExample {

public static void main(String[] args) {
// declaring two double variables
double a = 2;
double b = 5;

// finding the 2 power of 5 using pow method.
double result = Math.pow(a, b);

// Printing the result variable which stores the pow() method output.
System.out.println("2 power of 5 value is "+result);
}
}

Output:

The above program produces this output.

2 power of 5 value is 32.0

One of the argument of Pow method is NaN:


Pow method takes base and exponent. If any one these two is NaN then what will be the output and how these are handled in pow method.

See the example program and output.
/**
* Program to work with NaN exponent with pow method.
*
* @author java-w3school
*
*/
public class PowerExampleNaN {
public static void main(String[] args) {
powNaNExponent(12);
}

/**
* Method to see if the exponent is NaN what will be the output and how pow
* method behaves.
*
* @param baseValue
*/
private static void powNaNExponent(double baseValue) {
// Declaring base and exponenet variable and values
double base = baseValue;
double exponent = Double.NaN;

// setting output to 1 by default.
double output = Math.pow(baseValue, exponent);

System.out.println(base + " power of " + exponent + " is " + output);
}
}

Output:


12.0 power of NaN is NaN

Observe the output that is NaN. Even if the base or exponent value is NaN then always output will be NaN.

Calculate Power of a Number Using a While loop:


Before checking the below program first, check the how while loop works and example programs.

package examples.java.w3schools.math;

/**
* Program to print the power for the given base and exponent using while loop
*
* @author java-w3school
*
*/
public class PowerExample {
public static void main(String[] args) {
powerOfANumber(2, 5);
powerOfANumber(5, 5);
powerOfANumber(9, 3);
}

/**
* Prints the power of the given combination.
*
* @param baseValue
* @param exponentValue
*/
private static void powerOfANumber(int baseValue, int exponentValue) {
// Declaring base and exponent variable and values
int base = baseValue;
int exponent = exponentValue;

// setting output to 1 by default.
long output = 1;

int actualExponent = exponent;

// while loop until exponent becomes 0
while (exponent != 0) {
output *= base;
--exponent;
}
//printing output
System.out.println(base + " power of " + actualExponent + " is " + output);
}
}


Output:

After running the above program, the output will be as below.

2 power of 5 is 32
5 power of 5 is 3125
9 power of 3 is 729

Calculate Power of a Number Using a For loop:

Finding the power of a number can be done using for loop as well. Below is the example program.

/**
* Prints the power of the given combination using for loop.
*
* @param baseValue
* @param exponentValue
*/
private static void powerOfANumberForLoop(int baseValue, int exponentValue) {
// Declaring base and exponent variable and values
int base = baseValue;
int exponent = exponentValue;

// setting output to 1 by default.
long output = 1;

int actualExponent = exponent;

// for loop until exponent becomes 0
for (; exponent != 0; --exponent) {
output *= base;
}

System.out.println(base + " power of " + actualExponent + " is " + output);
}

Output:


The above program produces this output.


10 power of 3 is 1000
6 power of 3 is 216
15 power of 3 is 3375


Java Program to calculate the power using recursion



public class Power {
public static void main(String[] args) {
int base = 3, powerRaised = 4;
int result = power(base, powerRaised);
System.out.printf("%d^%d = %d", base, powerRaised, result);
}
public static int power(int base, int powerRaised) {
if (powerRaised != 0)
return (base * power(base, powerRaised - 1));
else
return 1;
}
}


Output:

3^4 = 81

0 Comments