Java programs to find the sum of the series $1 + 2 + 3 + ... + n$ i.e. the sum of the first $n$ natural numbers have been shown here. Both the iterative and recursive approaches have been shown below. The sum can also be computed using the mathematical formula $\frac{n(n+1)}{2}$.
Example:
Suppose $n = 6$
So the sum of first $6$ natural numbers = $1 + 2 + 3 + 4 + 5 + 6 = 21$
By using the mathematical formula, we obtain the sum of first $6$ natural numbers = $\frac{6 \cdot (6+1)}{2} = 21 $
The algorithm, pseudocode and time-complexity of the program have also been covered in the following sections.
Page content(s):
1. Algorithm to find sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers
1. Take number of terms $n$ as inputs.
2. Set $sum = 0$.
3. Add each $i \in [1, n]$, to $sum$.
4. Display $sum$ as output.
2. Pseudocode to find sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers
Input: Number of terms $n$
Output: Sum of $1+2+3+...+n$
1. Procedure sumSeries($n$):
2.
3.
4.
5.
6. End Procedure
3. Time complexity to find sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers
Time Complexity: O(n)
Here $n$ is the number of terms.
Time Complexity (Using formula): O(1)
4. Program & output to find the sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers
4.1. Java Program & output to find sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers using formula
/******************************************** alphabetacoder.com Java Program to find sum of series 1 + 2 + 3 +...+n using the formula n(n + 1) / 2 *********************************************/ import java.util.Scanner; class Main { public static void main(String[] args) { // declare instance of Scanner class Scanner sc = new Scanner(System.in); // delclare variables int n, sum = 0; // take no of terms as input System.out.print("Enter no of terms: "); n = sc.nextInt(); // calculate the sum using formula sum = (n * (n + 1)) / 2; // display results System.out.println("Sum = " + sum); } }
Output
Enter no of terms: 15
Sum: 120
4.2. Java Program to find sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers using iteration
/******************************************** alphabetacoder.com Java Program to find sum of series 1 + 2 + 3 +...+n using iterative approach *********************************************/ import java.util.Scanner; class Main { public static void main(String[] args) { // declare instance of Scanner class Scanner sc = new Scanner(System.in); // delclare variables int i, n, sum = 0; // take no of terms as input System.out.print("Enter no of terms: "); n = sc.nextInt(); // calculate the sum using loop for (i = 1; i <= n; i++) { sum += i; } // display results System.out.println("Sum = " + sum); } }
Output
Enter no of terms: 5
Sum: 15
4.3. Java Program to find sum of the series 1 + 2 + 3 + ... + n / Sum of the First N Natural Numbers using recursion
/********************************** alphabetacoder.com Java Program to find sum of series 1 + 2 + 3 +...+ n using recursion ***********************************/ import java.util.Scanner; class Main { // recursive function to calculate sum // of series 1 + 2 + 3 ... + n int calculate_sum(int n) { // exit condition of recursive call if (n == 0) return 0; // call function return n + calculate_sum(n - 1); } public static void main(String[] args) { // declare instance of Scanner class Scanner sc = new Scanner(System.in); // delclare object Main obj = new Main(); // delclare variables int n, sum; // take no of terms as input System.out.print("Enter no of terms: "); n = sc.nextInt(); // call function to get result sum = obj.calculate_sum(n); // display results System.out.println("Sum = " + sum); } }
Output
Enter no of terms: 20
Sum: 210