Find the Nth term of the series 1 + 2 + 6 + 15 + 31 + 56 + …

Given an integer N. The task is to write a program to find the N-th term of the given series:

1 + 2 + 6 + 15 + 31 + 56 + ... 

Examples:

Input : N = 8
Output : 141

Input : N = 20
Output : 2471

Approach:
The given series is:

1, 2, 6, 15, 31, 56, 92, 141, ...

First consecutive difference:

1 4 9 16 25 36 49 .......

Second consecutive difference:



3 5 7 9 11 13......

As the second consecutive difference is in AP, the nth term (tn) of the series is of the form,

A(n – 1)(n – 2)(n – 3) + B(n – 1)(n – 2) + C(n – 1) + D

So, tn = A(n – 1)(n – 2)(n – 3) + B(n – 1)(n – 2) + C(n – 1) + D

Now,
t1 = D = 1

t2 = C (2 – 1) + D = 2

t3 = 2B + 2C + D = 6

t4 = CA + 6B + 3C + D = 15

On solving the above four equations we get => A = 1/3, B = 3/2, C = 1, D = 1. On substituting these values tn and after simplifying we get,

t_{n} = \frac{2n^{3}-3n^{2}+n+6}{6}

Below is the implementation of above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ program to find Nth 
// term of the series:
// 1 + 2 + 6 + 15 + 31 + 56 + ...
#include<iostream>
#include<math.h>
using namespace std;
  
// calculate Nth term of given series
int Nth_Term(int n)
{
    return (2 * pow(n, 3) - 3 * 
                pow(n, 2) + n + 6) / 6;
}
  
// Driver code
int main()
{
    int N = 8;
    cout << Nth_Term(N);
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java program to find Nth 
// term of the series: 
// 1 + 2 + 6 + 15 + 31 + 56 + ... 
import java.util.*;
import java.lang.*;
  
class GFG
{
// calculate Nth term of given series 
static double Nth_Term(int n) 
    return (2 * Math.pow(n, 3) - 3
                Math.pow(n, 2) + n + 6) / 6
  
// Driver code 
static public void main (String args[])
{
    int N = 8
    System.out.println(Nth_Term(N)); 
}
}
  
// This code is contributed
// by Akanksha Rai

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python program to find Nth term of the series:
# 1 + 2 + 6 + 15 + 31 + 56 + ...
  
# calculate Nth term of given series
def Nth_Term(n):
    return (2 * pow(n, 3) - 3 * pow(n, 2) + n + 6) // 6
  
# Driver code
N = 8
print(Nth_Term(N))

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# program to find Nth 
// term of the series: 
// 1 + 2 + 6 + 15 + 31 + 56 + ... 
using System;
  
class GFG
{
// calculate Nth term of given series 
static double Nth_Term(int n) 
    return (2 * Math.Pow(n, 3) - 3 * 
                Math.Pow(n, 2) + n + 6) / 6; 
  
// Driver code 
static public void Main ()
{
    int N = 8; 
    Console.WriteLine(Nth_Term(N)); 
}
}
  
// This code is contributed
// by Sach_Code

chevron_right


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?php
// PHP program to find Nth 
// term of the series:
// 1 + 2 + 6 + 15 + 31 + 56 + ..
  
// calculate Nth term of given series
function Nth_Term($n)
{
    return (2 * pow($n, 3) - 3 *
                pow($n, 2) + $n + 6) / 6;
}
  
// Driver code
$N = 8;
  
echo Nth_Term($N);
  
// This code is contributed by 
// Shashank_Sharma
?>

chevron_right


Output:

141


My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.