Given a number N, the task is to find the sum of the first N terms of the below series:
Sn = 2 + 6 + 12 + 20 + 30 … upto n terms
Examples:
Input: N = 2 Output: 8 Explanation: 2 + 6 = 8 Input: N = 4 Output: 40 Explanation: 2 + 6+ 12 + 20 = 40
Approach: Let, the nth term be denoted by Sn.
This problem can easily be solved by splitting each term as follows :
Sn = 2 + 6 + 12 + 20 + 30...... Sn = (1+1^2) + (2+2^2) + (3+3^2) + (4+4^2) +...... Sn = (1 + 2 + 3 + 4 + ...unto n terms) + (1^2 + 2^2 + 3^2 + 4^2 + ...upto n terms)
We observed that Sn can break down into summation of two series.
Hence, the sum of the first n terms is given as follows:
Sn = (1 + 2 + 3 + 4 + ...unto n terms) + (1^2 + 2^2 + 3^2 + 4^2 + ...upto n terms) Sn = n*(n + 1)/2 + n*(n + 1)*(2*n + 1)/6
Below is the implementation of the above approach:
C++
// C++ program to find sum of first n terms #include <bits/stdc++.h> using namespace std;
// Function to calculate the sum int calculateSum( int n)
{ return n * (n + 1) / 2 + n * (n + 1) * (2 * n + 1) / 6;
} // Driver code int main()
{ // number of terms to be
// included in the sum
int n = 3;
// find the Sn
cout << "Sum = " << calculateSum(n);
return 0;
} |
Java
// Java program to find sum of first n terms import java.util.*;
import java.lang.*;
import java.io.*;
class GFG
{ // Function to calculate the sum static int calculateSum( int n)
{ return n * (n + 1 ) / 2 + n *
(n + 1 ) * ( 2 * n + 1 ) / 6 ;
} // Driver code public static void main(String args[])
{ // number of terms to be
// included in the sum
int n = 3 ;
// find the Sn
System.out.print( "Sum = " + calculateSum(n));
} } |
Python3
# Python program to find sum of # first n terms # Function to calculate the sum def calculateSum(n):
return (n * (n + 1 ) / / 2 + n *
(n + 1 ) * ( 2 * n + 1 ) / / 6 )
# Driver code # number of terms to be # included in the sum n = 3
# find the Sum print ( "Sum = " , calculateSum(n))
# This code is contributed by # Sanjit_Prasad |
C#
// C# program to find sum of // first n terms using System;
class GFG
{ // Function to calculate the sum static int calculateSum( int n)
{ return n * (n + 1) / 2 + n *
(n + 1) * (2 * n + 1) / 6;
} // Driver code public static void Main()
{ // number of terms to be
// included in the sum
int n = 3;
// find the Sn
Console.WriteLine( "Sum = " +
calculateSum(n));
} } // This code is contributed by inder_verma |
PHP
<?php // PHP program to find sum // of first n terms // Function to calculate the sum function calculateSum( $n )
{ return $n * ( $n + 1) / 2 + $n *
( $n + 1) * (2 * $n + 1) / 6;
} // Driver code // number of terms to be // included in the sum $n = 3;
// find the Sn echo "Sum = " , calculateSum( $n );
// This code is contributed // by inder_verma ?> |
Javascript
<script> // Javascript program to find sum of first n terms // Function to calculate the sum function calculateSum(n)
{ return n * (n + 1) / 2 + n *
(n + 1) * (2 * n + 1) / 6;
} // Driver code // number of terms to be
// included in the sum
let n = 3;
// find the Sn
document.write( "Sum = " + calculateSum(n));
// This code is contributed by Mayank Tyagi </script> |
Output:
Sum = 20
Time Complexity: O(1), we are using only constant-time operations.
Auxiliary Space: O(1)