Given a series and a number n, the task is to find the sum of its first n terms. Below is the series:
2, 5, 13, 35, 97, …
Examples:
Input: N = 2 Output: 7 The sum of first 2 terms of Series is 2 + 5 = 7 Input: N = 4 Output: 55 The sum of first 4 terms of Series is 2 + 5 + 13 + 35 = 55
Approach: From this given series we find it is the sum of the Two GP series with common ratios 2, 3.
Sn = 2 + 5 + 13 + 35 + 97 … + upto nth term
Sn = (2^0 + 3^ 0) + (2^1 + 3^1) + (2^2 + 3^2) + (2^3 + 3^3)+ (2^4 + 3^4) …… + upto nth term
Sn = (2^0 + 2^1 + 2^2 + 2^3 + 2^4 … + upto nth term) + ( 3^0 + 3^1 + 3^2 + 3^3 …… + unto nth term )
Since We know that the sum of n terms of the GP is given by the following formula:
Below is the implementation of the above approach:
// C++ program for finding the sum // of first N terms of the series. #include <bits/stdc++.h> using namespace std;
// CalculateSum function returns the final sum int calculateSum( int n)
{ // r1 and r2 are common ratios
// of 1st and 2nd series
int r1 = 2, r2 = 3;
// a1 and a2 are common first terms
// of 1st and 2nd series
int a1 = 1, a2 = 1;
return a1 * ( pow (r1, n) - 1) / (r1 - 1)
+ a2 * ( pow (r2, n) - 1) / (r2 - 1);
} // Driver code int main()
{ int n = 4;
// function calling for 4 terms
cout << "Sum = " << calculateSum(n)
<< endl;
return 0;
} |
//Java program for finding the sum //of first N terms of the series. public class GFG {
//CalculateSum function returns the final sum
static int calculateSum( int n)
{
// r1 and r2 are common ratios
// of 1st and 2nd series
int r1 = 2 , r2 = 3 ;
// a1 and a2 are common first terms
// of 1st and 2nd series
int a1 = 1 , a2 = 1 ;
return ( int )(a1 * (Math.pow(r1, n) - 1 ) / (r1 - 1 )
+ a2 * (Math.pow(r2, n) - 1 ) / (r2 - 1 ));
}
//Driver code
public static void main(String[] args) {
int n = 4 ;
// function calling for 4 terms
System.out.println( "Sum = " +calculateSum(n));
}
} |
# Python 3 program for finding the sum # of first N terms of the series. # from math import everything from math import *
# CalculateSum function returns the final sum def calculateSum(n) :
# r1 and r2 are common ratios
# of 1st and 2nd series
r1, r2 = 2 , 3
# a1 and a2 are common first terms
# of 1st and 2nd series
a1, a2 = 1 , 1
return (a1 * ( pow (r1, n) - 1 ) / / (r1 - 1 )
+ a2 * ( pow (r2, n) - 1 ) / / (r2 - 1 ))
# Driver Code if __name__ = = "__main__" :
n = 4
# function calling for 4 terms
print ( "SUM = " ,calculateSum(n))
# This code is contributed by ANKITRAI1 |
// C# program for finding the sum // of first N terms of the series. using System;
class GFG
{ // CalculateSum function // returns the final sum static int calculateSum( int n)
{ // r1 and r2 are common ratios // of 1st and 2nd series int r1 = 2, r2 = 3;
// a1 and a2 are common first // terms of 1st and 2nd series int a1 = 1, a2 = 1;
return ( int )(a1 * (Math.Pow(r1, n) - 1) / (r1 - 1) +
a2 * (Math.Pow(r2, n) - 1) / (r2 - 1));
} // Driver code static public void Main ()
{ int n = 4;
// function calling for 4 terms
Console.Write( "Sum = " +
calculateSum(n));
} } // This code is contributed by Raj |
<?php // PHP program for finding the sum // of first N terms of the series. // CalculateSum function returns // the final sum function calculateSum( $n )
{ // r1 and r2 are common ratios
// of 1st and 2nd series
$r1 = 2;
$r2 = 3;
// a1 and a2 are common first
// terms of 1st and 2nd series
$a1 = 1;
$a2 = 1;
return $a1 * (pow( $r1 , $n ) - 1) /
( $r1 - 1) + $a2 *
(pow( $r2 , $n ) - 1) /
( $r2 - 1);
} // Driver code $n = 4;
// function calling for 4 terms echo "Sum = " , calculateSum( $n );
// This code is contributed by ash264 ?> |
<script> //javascript program for finding the sum //of first N terms of the series. //CalculateSum function returns the final sum function calculateSum(n)
{ // r1 and r2 are common ratios
// of 1st and 2nd series
var r1 = 2, r2 = 3;
// a1 and a2 are common first terms
// of 1st and 2nd series
var a1 = 1, a2 = 1;
return parseInt((a1 * (Math.pow(r1, n) - 1) / (r1 - 1)
+ a2 * (Math.pow(r2, n) - 1) / (r2 - 1)));
} //Driver code
var n = 4;
// function calling for 4 terms
document.write( "Sum = " +calculateSum(n));
// This code contributed by shikhasingrajput </script> |
Output
Sum = 55
Time Complexity: O(log n)
Auxiliary Space: O(1), As constant extra space is used.