Given first term (a), common ratio (r), and an integer N of the Geometric Progression series, the task is to find the Nth term of the series.
Examples:
Input: a = 2 r = 2, N = 4
Output: The 4th term of the series is : 16
Input: a = 2 r = 3, N = 5
Output: The 5th term of the series is : 162
Approach: To solve the problem follow the below idea:
We know the Geometric Progression series is like = 2, 4, 8, 16, 32 …. …
In this series 2 is the stating term of the series .
Common ratio = 4 / 2 = 2 (ratio common in the series).
so we can write the series as :
t1 = a1
t2 = a1 * r(2-1)
t3 = a1 * r(3-1)
t4 = a1 * r(4-1)
.
.
.
.
tN = a1 * r(N-1)
To find the Nth term in the Geometric Progression series we use the simple formula as shown below as follows:
TN = a1 * r(N-1)
Below is the implementation of the above approach:
C++
#include <bits/stdc++.h>
using namespace std;
int Nth_of_GP( int a, int r, int N)
{
return (a * ( int )( pow (r, N - 1)));
}
int main()
{
int a = 2;
int r = 3;
int N = 5;
cout << "The " << N << "th term of the series is : "
<< Nth_of_GP(a, r, N);
return 0;
}
|
Java
import java.io.*;
import java.lang.*;
class GFG {
public static int Nth_of_GP( int a, int r, int N)
{
return (a * ( int )(Math.pow(r, N - 1 )));
}
public static void main(String[] args)
{
int a = 2 ;
int r = 3 ;
int N = 5 ;
System.out.print( "The " + N + "th term of the"
+ " series is : "
+ Nth_of_GP(a, r, N));
}
}
|
Python3
import math
def Nth_of_GP(a, r, N):
return (a * ( int )(math. pow (r, N - 1 )))
if __name__ = = "__main__" :
a = 2
r = 3
N = 5
print ( "The" , N, "th term of the series is :" ,
Nth_of_GP(a, r, N))
|
C#
using System;
class GFG {
public static int Nth_of_GP( int a, int r, int N)
{
return (a * ( int )(Math.Pow(r, N - 1)));
}
public static void Main()
{
int a = 2;
int r = 3;
int N = 5;
Console.Write( "The " + N + "th term of the"
+ " series is : "
+ Nth_of_GP(a, r, N));
}
}
|
PHP
<?php
function Nth_of_GP( $a , $r , $N )
{
return ( $a * (int)(pow( $r , $N - 1)) );
}
$a = 2;
$r = 3;
$N = 5;
echo ( "The " . $N . "th term of the series is : "
. Nth_of_GP( $a , $r , $N ));
?>
|
Javascript
function Nth_of_GP(a, r, N)
{
return ( a * Math.floor(Math.pow(r, N - 1)) );
}
let a = 2;
let r = 3;
let N = 5;
document.write( "The " + N + "th term of the series is : "
+ Nth_of_GP(a, r, N));
|
OutputThe 5th term of the series is : 162
Time complexity: O(log N) because using the inbuilt pow function
Auxiliary Space: O(1)
Approach 2(Using Loop): To solve the problem follow the below idea:
- Initialize a variable NthTerm to hold the Nth term of the geometric progression series, and set it equal to the first term of the series.
- Use a for loop to iterate over the first N-1 terms of the series, multiplying each term by the common ratio to get the next term.
- Print out the calculated Nth term of the series.
Below is the implementation of the above approach:
Java
import java.io.*;
import java.lang.*;
class GFG {
public static int Nth_of_GP( int a, int r, int N)
{
int NthTerm = a;
for ( int i = 1 ; i < N; i++) {
NthTerm *= r;
}
return NthTerm;
}
public static void main(String[] args)
{
int a = 2 ;
int r = 3 ;
int N = 5 ;
System.out.print( "The " + N + "th term of the"
+ " series is : "
+ Nth_of_GP(a, r, N));
}
}
|
Output
The 5th term of the series is : 162
Time complexity: O(log N)
Auxiliary Space: O(1)