Related Articles
Program to print tetrahedral numbers upto Nth term
• Last Updated : 17 Aug, 2018

Prerequisites:

Given a value n, and the task is to print tetrahedral number series up to nth term.

Examples:

Input: 5
Output: 1  4  10  20  35

Input: 10
Output: 1  4  10  20  35  56  84  120  165  220


## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Method 1: Using Triangular Number series:
This problem can be easily solved with the fact that Nth Tetrahedral Number is equal to the sum of first N Triangular Numbers.

Let’s have a look on Series of triangular and tetrahedral Numbers.

To print series upto 5th term:
Triangular Numbers  =  1        3          6             10                  15
Tetrahedral numbers =  1        4          10            20                  35
i.e  (1)    (1 + 3)  (1 + 3 + 6)  (1 + 3 + 6 + 10)  (1 + 3 + 6 + 10 + 35)


Calculate Nth Triangular number using formula So, print the tetrahedral numbers series by generating triangular numbers and adding it with the sum of all previously generated triangular numbers.

Below is the implementation of the above approach:

## C++

 // C++ program to generate tetrahedral// number series#include using namespace std;  // function to generate nth triangular// numberlong findTriangularNumber(int n){    return (n * (n + 1)) / 2;}  // function to print tetrahedral number // series up to nvoid printSeries(int n){    // Initialize prev as 0. It stores     // the sum of all previously generated    // triangular number    int prev = 0;    int curr;      // Loop to print series    for (int i = 1; i <= n; i++)     {        // Find ith triangular number        curr = findTriangularNumber(i);          // Add ith triangular number to        // sum of all previously generated        // triangular number to get ith         // tetrahedral number        curr = curr + prev;        cout << curr << " ";          // Update sum of all previously         // generated triangular number        prev = curr;    }}  // Driver codeint main(){    int n = 10;          // function call to print series    printSeries(n);          return 0;}

## Java

 // Java program to generate tetrahedral// number seriesimport java.io.*;  class GFG {          // function to generate nth triangular    // number    static long findTriangularNumber(int n)    {        return (n * (n + 1)) / 2;    }          // function to print tetrahedral number     // series up to n    static void printSeries(int n)    {        // Initialize prev as 0. It store         // the sum of all previously generated        // triangular number        long prev = 0;        long curr;              // Loop to print series        for (int i = 1; i <= n; i++)         {            // Find ithh triangular number            curr = findTriangularNumber(i);                  // Add ith triangular number to            // sum of all previously generated            // triangular number to get ith             // tetrahedral number            curr = curr + prev;            System.out.print(curr + " ");                  // Update sum of all previously             // generated triangular number            prev = curr;        }    }      // Driver code    public static void main (String[] args)     {        int n = 10;              // function call to print series        printSeries(n);    }}

## Python3

 # Python3 program to generate # tetrahedral number series  # function to generate nth # triangular numberdef findTriangularNumber(n):    return (n * (n + 1)) / 2  # function to print tetrahedral # number series up to ndef printSeries(n):      # Initialize prev as 0.     # It stores the sum of all     # previously generated     # triangular number    prev = 0      # Loop to print series    for i in range(1, n+1):               # Find ith triangular number        curr = findTriangularNumber(i)          # Add ith triangular number         # to sum of all previously         # generated triangular number         # to get ith tetrahedral number        curr = int(curr + prev)        print(curr, end = ' ')          # Update sum of all previously         # generated triangular number        prev = curr  # Driver coden = 10      # function call to# print seriesprintSeries(n)  # This code is contributed by Mahadev.

## C#

 // C# program to generate tetrahedral// number seriesusing System;  public class GFG{          // function to generate nth triangular    // number    static long findTriangularNumber(int n)    {        return (n * (n + 1)) / 2;    }          // function to print tetrahedral number     // series up to n    static void printSeries(int n)    {        // Initialize prev as 0. It store         // the sum of all previously generated        // triangular number        long prev = 0;        long curr;              // Loop to print series        for (int i = 1; i <= n; i++)         {            // Find ithh triangular number            curr = findTriangularNumber(i);                  // Add ith triangular number to            // sum of all previously generated            // triangular number to get ith             // tetrahedral number            curr = curr + prev;            Console.Write(curr + " ");                  // Update sum of all previously             // generated triangular number            prev = curr;        }    }      // Driver code    static public void Main ()    {        int n = 10;              // function call to print series        printSeries(n);    }}

## PHP

 
Output:
1 4 10 20 35 56 84 120 165 220


Time Complexity: O(n)

Method 2: Using Tetrahedral Number Formula:

Formula to find nth tetrahedral number: Below is the required implementation:

## C++

 // C++ program to generate series of // tetrahedral numbers#include using namespace std;  // function to print tetrahedral // number series up to nvoid printSeries(int n){      // loop to print series    for (int i = 1; i <= n; i++)    {        // Calculate and print ith         // tetrahedral number                int num = i * (i + 1) * (i + 2) / 6;        cout << num << " ";    }}  // Driver codeint main(){    int n = 10;          // function call to print series    printSeries(n);          return 0;}

## Java

 // Java program to generate series of // tetrahedral numbersimport java.io.*;  class GFG {          // function to print tetrahedral     // number series up to n    static void printSeries(int n)    {              // loop to print series        for (int i = 1; i <= n; i++)        {            // Calculate and print ith             // tetrahedral number            int num = i * (i + 1) * (i + 2) / 6;                          System.out.print(num + " ");        }    }          // Driver code    public static void main (String[] args)     {        int n = 10;              // function call to print series        printSeries(n);    }}

## Python3

 # Python3 code to print tetrahedral# numbers series up to n   # function to print tetrahedral series up to ndef printSeries(n):       # loop to print series     for i in range(1, n + 1):                  # Calculate and print ith         # Tetrahedral number        num = i * (i + 1) * (i + 2) // 6                  print(num, end =' ')                    # Driver coden = 10  # function call to print seriesprintSeries(n)

## C#

 // C# program to generate series of // tetrahedral numbersusing System;  public class GFG{          // function to print tetrahedral     // number series up to n    static void printSeries(int n)    {              // loop to print series        for (int i = 1; i <= n; i++)        {            // Calculate and print ith             // tetrahedral number            int num = i * (i + 1) * (i + 2) / 6;                          Console.Write(num + " ");        }    }          // Driver code    static public void Main ()    {        int n = 10;              // function call to print series        printSeries(n);    }}

## PHP

 
Output:
1 4 10 20 35 56 84 120 165 220


Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up