Open In App

Find Nth term of series 1, 4, 15, 72, 420…

Improve
Improve
Like Article
Like
Save
Share
Report

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)/2

Input: 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>


Output

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>


Output

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.



Last Updated : 11 Apr, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads