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

```
fun main(args: Array<String>) {
val number = 20
val sum = addNumbers(number)
println("Sum = $sum")
}
fun addNumbers(num: Int): Int {
if (num != 0)
return num + addNumbers(num - 1)
else
return num
}
```

When you run the program, the output will be:

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.

Here's the equivalent Java code: Java Program to Find Sum of Natural Numbers using Recursion