Write a Java Program to calculate the power using recursion

Calculating the power of a number is a common task in mathematics and programming.

In Java, we can use recursion to calculate the power of a number.

Recursion is a programming technique where a function calls itself until a base case is met.

To calculate the power of a number using recursion, we can define a function that takes two parameters, the base and the exponent.

The function will then use recursion to calculate the result.

Here is an example Java program that calculates the power of a number using recursion:

public class Power {
  public static void main(String[] args) {
    int base = 2;
    int exponent = 3;
    int result = calculatePower(base, exponent);
    System.out.println(base + "^" + exponent + " = " + result);
  }

  public static int calculatePower(int base, int exponent) {
    if (exponent == 0) {
      return 1;
    } else {
      return base * calculatePower(base, exponent - 1);
    }
  }
}

In this program, we define a Power class with a main method.

Inside the main method, we define the base and exponent variables and call the calculatePower function to calculate the result.

We then print the result to the console.

The calculatePower function takes two parameters, base and exponent.

Inside the function, we first check if the exponent is zero.

If it is, we return 1 since any number raised to the power of zero is 1.

If the exponent is not zero, we recursively call the calculatePower function with the same base and a decremented exponent.

We then multiply the base with the result of the recursive call and return the result.

This program can be used to calculate the power of any base and exponent.

To use it with different values, simply modify the base and exponent variables in the main method.


In conclusion, recursion is a powerful technique in programming that can be used to solve a variety of problems, including calculating the power of a number.

By using recursion, we can write concise and elegant code that is easy to understand and maintain.