Find Nth term of series 1, 4, 15, 72, 420…
Given a number N. The task is to write a program to find the Nth term in the below series:
1, 4, 15, 72, 420…
Examples:
Input: 3
Output: 15
Explanation: For N = 3, we know that the factorial of 3 is 6 Nth term = 6*(3+2)/2Input: 6
Output: 2880
Explanation: For N = 6, we know that the factorial of 6 is 720 Nth term = 620*(6+2)/2 = 2880
The idea is to first find the factorial of the given number N, that is N!. Now the N-th term in the above series will be:
N-th term = N! * (N + 2)/2
Below is the implementation of the above approach:
C++
// CPP program to find N-th term of the series: // 1, 4, 15, 72, 420… #include <iostream> using namespace std; // Function to find factorial of N int factorial( int N) { int fact = 1; for ( int i = 1; i <= N; i++) fact = fact * i; // return factorial of N return fact; } // calculate Nth term of series int nthTerm( int N) { return (factorial(N) * (N + 2) / 2); } // Driver Function int main() { int N = 6; cout << nthTerm(N); return 0; } |
Java
// Java program to find N-th // term of the series: // 1, 4, 15, 72, 420 import java.util.*; import java.lang.*; import java.io.*; class GFG { // Function to find factorial of N static int factorial( int N) { int fact = 1 ; for ( int i = 1 ; i <= N; i++) fact = fact * i; // return factorial of N return fact; } // calculate Nth term of series static int nthTerm( int N) { return (factorial(N) * (N + 2 ) / 2 ); } // Driver Code public static void main(String args[]) { int N = 6 ; System.out.println(nthTerm(N)); } } // This code is contributed by Subhadeep |
Python3
# Python 3 program to find # N-th term of the series: # 1, 4, 15, 72, 420… # Function for finding # factorial of N def factorial(N) : fact = 1 for i in range ( 1 , N + 1 ) : fact = fact * i # return factorial of N return fact # Function for calculating # Nth term of series def nthTerm(N) : # return nth term return (factorial(N) * (N + 2 ) / / 2 ) # Driver code if __name__ = = "__main__" : N = 6 # Function Calling print (nthTerm(N)) # This code is contributed # by ANKITRAI1 |
C#
// C# program to find N-th // term of the series: // 1, 4, 15, 72, 420 using System; class GFG { // Function to find factorial of N static int factorial( int N) { int fact = 1; for ( int i = 1; i <= N; i++) fact = fact * i; // return factorial of N return fact; } // calculate Nth term of series static int nthTerm( int N) { return (factorial(N) * (N + 2) / 2); } // Driver Code public static void Main() { int N = 6; Console.Write(nthTerm(N)); } } // This code is contributed by ChitraNayal |
PHP
<?php // PHP program to find // N-th term of the series: // 1, 4, 15, 72, 420… // Function for finding // factorial of N function factorial( $N ) { $fact = 1; for ( $i = 1; $i <= $N ; $i ++) $fact = $fact * $i ; // return factorial of N return $fact ; } // Function for calculating // Nth term of series function nthTerm( $N ) { // return nth term return (factorial( $N ) * ( $N + 2) / 2); } // Driver code $N = 6; // Function Calling echo nthTerm( $N ); // This code is contributed // by mits ?> |
Javascript
<script> // JavaScript program to find N-th term of the series: // 1, 4, 15, 72, 420… // Function to find factorial of N function factorial( N) { let fact = 1; for (let i = 1; i <= N; i++) fact = fact * i; // return factorial of N return fact; } // calculate Nth term of series function nthTerm(N) { return (factorial(N) * (N + 2) / 2); } // Driver code let N = 6; document.write( nthTerm(N) ); // This code contributed by aashish1995 </script> |
2880
Time Complexity: O(n)
Auxiliary Space: O(1)
Another approach :(Using recursion)
C++
// CPP program to find N-th term of the series: // 1, 4, 15, 72, 420… // Using recursion #include <iostream> using namespace std; // Function to find factorial of N // with recursion int factorial( int N) { // base condition if ( N == 0 || N == 1 ) return 1; // use recursion return N * factorial( N - 1 ); } // calculate Nth term of series int nthTerm( int N) { return (factorial(N) * (N + 2) / 2); } // Driver Function int main() { int N = 6; cout << nthTerm(N); return 0; } |
Java
// Java program to find N-th // term of the series: // 1, 4, 15, 72, 420 import java.util.*; import java.lang.*; import java.io.*; class GFG { // Function to find factorial of N static int factorial( int N) { // base condition if ( N == 0 || N == 1 ) return 1 ; // use recursion return N * factorial( N - 1 ); } // calculate Nth term of series static int nthTerm( int N) { return (factorial(N) * (N + 2 ) / 2 ); } // Driver Code public static void main(String args[]) { int N = 6 ; System.out.println(nthTerm(N)); } } |
Python3
# Python3 program to find # N-th term of the series: # 1, 4, 15, 72, 420… # Using recursion # Function to find factorial # of N with recursion def factorial(N): # base condition if N = = 0 or N = = 1 : return 1 # use recursion return N * factorial(N - 1 ) def nthTerm(N): # calculate Nth term of series return (factorial(N) * (N + 2 ) / / 2 ) # Driver code N = 6 print (nthTerm(N)) # This code is contributed # by Shrikant13 |
C#
// C# program to find N-th // term of the series: // 1, 4, 15, 72, 420 using System; class GFG { // Function to find factorial of N static int factorial( int N) { // base condition if ( N == 0 || N == 1 ) return 1; // use recursion return N * factorial( N - 1 ); } // calculate Nth term of series static int nthTerm( int N) { return (factorial(N) * (N + 2) / 2); } // Driver Code public static void Main() { int N = 6; Console.Write(nthTerm(N)); } } // This code is contributed by ChitraNayal |
PHP
<?php // PHP program to find // N-th term of the series: // 1, 4, 15, 72, 420… // Function to find factorial // of N with recursion function factorial( $N ) { // base condition if ( $N == 0 or $N == 1) return 1; // use recursion return $N * factorial( $N - 1); } // calculate Nth term of series function nthTerm( $N ) { return (factorial( $N ) * ( $N + 2) / 2); } // Driver Code $N = 6; echo nthTerm( $N ); // This code is contributed // by Shashank ?> |
Javascript
<script> // Javascript program to find N-th // term of the series: // 1, 4, 15, 72, 420 // Function to find factorial of N function factorial(N) { // Base condition if (N == 0 || N == 1) return 1; // Use recursion return N * factorial(N - 1); } // Calculate Nth term of series function nthTerm(N) { return (factorial(N) * (N + 2) / 2); } // Driver Code let N = 6; document.write(nthTerm(N)); // This code is contributed by avanitrachhadiya2155 </script> |
2880
Time complexity: O(N)
Auxiliary Space: O(N), for recursion call stack.
Note: Above code wouldn’t work for large values of N. To find the values for large N, use the concept of Factorial for large numbers.