Related Articles
Program to Print the Trapezium Pattern
• Last Updated : 30 May, 2021

Given ‘num’ which indicates number of lines.The task is to print a trapezium pattern in num lines.
Examples:

```Input  : 4
Output :
1*2*3*4*17*18*19*20
5*6*7*14*15*16
8*9*12*13
10*11

Input : 2
Output :
1*2*5*6
3*4```

Algorithm :
step 1. To read num which indicates the number of lines.
step 2.We are diving the pattern into 2 halves that is LHS part and the RHS part.
Ex : When num = 2
LHS –
1*2*
3*
RHS –
5*6

step 3.Combining LHS and RHS we get the complete pattern.

## C++

 `// CPP program to print Trapezium Pattern``#include ` `using` `namespace` `std;` `int` `main()``{` `    ``int` `num = 3;``    ``int` `space;` `    ``int` `i, j, lterm, rterm;` `    ``// The terms on the LHS of the pattern``    ``lterm = 1;` `    ``// The terms on the RHS of the pattern``    ``rterm = num * num + 1;` `    ``for` `(i = num; i > 0; i--) {` `        ``// To print number of spaces``        ``for` `(space = num; space > i; space--)``            ``cout << ``" "``;` `        ``for` `(j = 1; j <= i; j++) {``            ``cout << lterm;``            ``cout << ``"*"``;``            ``lterm++;``        ``}``        ``for` `(j = 1; j <= i; j++) {``            ``cout << rterm;``            ``if` `(j < i)``                ``printf``(``"*"``);``            ``rterm++;``        ``}` `        ``// To get the next term on RHS of the Pattern``        ``rterm = rterm - (i - 1) * 2 - 1;``        ``cout << endl;``    ``}``}`

## Java

 `// Java program to print Trapezium Pattern``public` `class` `HelloWorld {` `    ``public` `static` `void` `trapeziumPattern(``int` `num)``    ``{` `        ``int` `firsthalf = ``1``;``        ``int` `secondhalf = (num * num) + ``1``;``        ``int` `numOfSpaces = ``0``;` `        ``// numOfLines is the line number``        ``for` `(``int` `numOfLines = num; numOfLines >= ``1``;``             ``numOfLines--) {` `            ``// Prints the spaces for each line``            ``for` `(``int` `numOfSpacesCounter = numOfSpaces;``                 ``numOfSpacesCounter >= ``1``;``                 ``numOfSpacesCounter--) {``                ``System.out.print(``" "``);``            ``}` `            ``// Prints the first half of the trapezium``            ``for` `(``int` `firstHalfCounter = ``1``;``                 ``firstHalfCounter <= numOfLines;``                 ``firstHalfCounter++) {` `                ``// If it is the last number for a line then``                ``// we don't print '*'``                ``if` `(firstHalfCounter == numOfLines)``                    ``System.out.print((firsthalf++));` `                ``else``                    ``System.out.print((firsthalf++) + ``"*"``);``            ``}` `            ``// Prints the second half of the trapezium``            ``for` `(``int` `secondHalfCounter = ``1``;``                 ``secondHalfCounter <= numOfLines;``                 ``secondHalfCounter++) {``                ``System.out.print(``"*"` `+ (secondhalf++));``            ``}` `            ``System.out.println();` `            ``// Calculates the number of Spaces for the next``            ``// line``            ``numOfSpaces += ``2``;` `            ``// Calculates the first number of the``            ``// second half for the next iteration/line``            ``secondhalf``                ``= (secondhalf - ``1``) - ((numOfLines - ``1``) * ``2``);``        ``}``    ``}` `    ``public` `static` `void` `main(String[] args)``    ``{``        ``trapeziumPattern(``            ``4``); ``// Passing the integer as the argument to``                ``// print trapezium pattern``    ``}``}`

## Python 3

 `# Python 3 program to print``# Trapezium Pattern`` ` `if` `__name__ ``=``=` `"__main__"``:``    ``num ``=` `3`` ` `    ``# The terms on the LHS``    ``# of the pattern``    ``lterm ``=` `1`` ` `    ``# The terms on the RHS``    ``# of the pattern``    ``rterm ``=` `num ``*` `num ``+` `1`` ` `    ``for` `i ``in` `range``(num, ``-``1``, ``-``1``):`` ` `        ``# To print number of spaces``        ``for` `space ``in` `range``(num, i``-``1``, ``-``1``):``            ``print``(``" "``, end ``=``"")`` ` `        ``for` `j ``in` `range``(``1``, i ``+` `1``):``            ``print``(``str``(lterm)``+``"*"``, end ``=``"")``            ``lterm ``+``=` `1` `        ``for` `j ``in` `range``(``1``, i ``+` `1``):``            ``print``(rterm, end ``=``"")``            ``if` `j < i:``                ``print``(``"*"``, end ``=``"")``            ``rterm ``+``=` `1`` ` `        ``# To get the next term on RHS of the Pattern``        ``rterm ``=` `rterm ``-` `(i ``-` `1``) ``*` `2` `-` `1``        ``print``()` `# This code is contributed by ChitraNayal`

## C#

 `// C# program to print Trapezium Pattern``using` `System;` `public` `class` `HelloWorld {` `    ``public` `static` `void` `Main(String[] args)``    ``{` `        ``// Scanner scn = new Scanner(System.in);``        ``int` `num = 3;``        ``int` `space;``        ``// System.out.println("Enter number of lines : ");``        ``// num = scn.nextInt();` `        ``int` `i, j, lterm, rterm;` `        ``lterm = 1; ``// The terms on the LHS of the pattern` `        ``// The terms on the RHS of the pattern``        ``rterm = num * num + 1;` `        ``for` `(i = num; i > 0; i--) {` `            ``// To print number of spaces``            ``for` `(space = num; space > i; space--)``                ``Console.Write(``" "``);` `            ``for` `(j = 1; j <= i; j++) {``                ``Console.Write(lterm);``                ``Console.Write(``"*"``);``                ``lterm++;``            ``}``            ``for` `(j = 1; j <= i; j++) {``                ``Console.Write(rterm);``                ``if` `(j < i)``                    ``Console.Write(``"*"``);``                ``rterm++;``            ``}` `            ``// To get the next term on RHS of the Pattern``            ``rterm = rterm - (i - 1) * 2 - 1;``            ``Console.WriteLine();``        ``}``    ``}``}` `// This code is contributed by ankita_saini`

## PHP

 ` 0; ``\$i``--)``{` `    ``// To print number of spaces``    ``for` `(``\$space` `= ``\$num``;``         ``\$space` `> ``\$i``; ``\$space``--)``        ``echo` `" "``;` `    ``for` `(``\$j` `= 1; ``\$j` `<= ``\$i``; ``\$j``++)``    ``{``        ``echo` `\$lterm``;``        ``echo` `"*"``;``        ``\$lterm``++;``    ``}``    ``for` `(``\$j` `= 1; ``\$j` `<= ``\$i``; ``\$j``++)``    ``{``        ``echo` `\$rterm``;``        ``if` `(``\$j` `< ``\$i``)``            ``echo` `"*"``;``        ``\$rterm``++;``    ``}` `    ``// To get the next term``    ``// on RHS of the Pattern``    ``\$rterm` `= ``\$rterm` `- (``\$i` `- 1) * 2 - 1;``    ``echo` `"\n"``;``}` `// This code is contributed``// by Akanksha Rai(Abby_akku)``?>`

## Javascript

 ``

Output:

```Enter number of lines : 3
1*2*3*10*11*12
4*5*8*9
6*7```

Want to learn from the best curated videos and practice problems, check out the C++ Foundation Course for Basic to Advanced C++ and C++ STL Course for the language and STL. 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