# Sum of first N Natural Numbers

Problem statement: Given a number ‘N’, find out the sum of the first N natural numbers.

Examples:

```Example 1:
Input: N=5
Output: 15
Explanation: 1+2+3+4+5=15

Example 2:
Input: N=6
Output: 21
Explanation: 1+2+3+4+5+6=15
```

### Solution

Disclaimer: Don’t jump directly to the solution, try it out yourself first.

Solution1: Using Loop

Intuition: We can simply add numbers one by one from 1 to N.

For eg. if N = 5, we can add 1+2+3+4+5=15.

We can use a for loop or while loop to achieve the goal.

Approach:

• Take a variable sum and initialize it as 0.
• Take a for loop and run from 1 to N.
• Save the result in sum.

Code:

## C++ Code

``````#include<bits/stdc++.h>
using namespace std;
void solve(int n) {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += i;
}
cout<<"The sum of the first "<<n<<" numbers is: "<<sum<<endl;
}
int main() {

solve(5);
solve(6);
}
``````

Output:

The sum of the first 5 numbers is: 15
The sum of the first 6 numbers is: 21

Time Complexity: O(N)

Space Complexity: O(1)

## Java Code

``````import java.util.*;

public class tuf {

public static void main(String[] args) {

solve(5);
solve(6);
}
public static void solve(int n) {
int sum = 0;
for (int i = 1; i <= n; i++) {
sum += i;
}
System.out.println("The sum of the first " + n + " numbers is: " + sum);
}
}
``````

Output:

The sum of the first 5 numbers is: 15
The sum of the first 6 numbers is: 21

Time Complexity: O(N)

Space Complexity: O(1)

Solution 2: Using the formula

Intuition: We can use the formula for the sum of N numbers, i.e N(N+1)/2.

For eg: N=5

5(5+1)/2 = 5(6)/2 = 15.

Approach:

• Take a variable sum.
• Initialize it with N(N+1)/2, where N is a given number.

Code:

## C++ Code

``````#include<bits/stdc++.h>
using namespace std;
void solve(int N) {
int sum = N * (N + 1) / 2;
cout<<"The sum of the first "<<N<<" numbers is: "<<sum<<endl;
}
int main() {

solve(5);
solve(6);
}

``````

Output:

The sum of the first 5 numbers is: 15
The sum of the first 6 numbers is: 21

Time Complexity: O(1)

Space Complexity: O(1)

## Java Code

``````import java.util.*;

public class tuf {

public static void main(String[] args) {

solve(5);
solve(6);
}
public static void solve(int N) {
int sum = N * (N + 1) / 2;
System.out.println("The sum of the first " + N + " numbers is: " + sum);
}
}
``````

Output:

The sum of the first 5 numbers is: 15
The sum of the first 6 numbers is: 21

Time Complexity: O(1)

Space Complexity: O(1)

Special thanks to Prashant Sahu for contributing to this article on takeUforward. If you also wish to share your knowledge with the takeUforward fam, please check out this article