Java Program to Find the Sum of Natural Numbers using Recursion

To understand this example, you should have the knowledge of the following Java programming topics:

The positive numbers 1, 2, 3... are known as natural numbers. The program below takes a positive integer from the user and calculates the sum up to the given number.

You can find the sum of natural numbers using loop as well. However, you will learn to solve this problem using recursion here.

Example: Sum of Natural Numbers Using Recursion

public class AddNumbers {

    public static void main(String[] args) {
        int number = 20;
        int sum = addNumbers(number);
        System.out.println("Sum = " + sum);

    public static int addNumbers(int num) {
        if (num != 0)
            return num + addNumbers(num - 1);
            return num;


Sum = 210

The number whose sum is to be found is stored in a variable number.

Initially, the addNumbers() is called from the main() function with 20 passed as an argument.

The number (20) is added to the result of addNumbers(19).

In the next function call from addNumbers() to addNumbers(), 19 is passed which is added to the result of addNumbers(18). This process continues until num is equal to 0.

When num is equal to 0, there is no recursive call and this returns the sum of integers to the main() function.

Did you find this article helpful?