# Print Lower Hessenberg matrix of order N

• Last Updated : 31 May, 2022

Given a positive integer N, the task is to print the Lower Hessenberg matrix of order N which includes any one-digit random positive integer as its non-zero elements.
Lower Hessenberg matrix is a square matrix in which all of its elements above the super-diagonal are zero. In mathematical term mat[i][j] = 0 for all j > i + 1.
Examples:

Input: N = 3
Output:
1 2 0
1 3 4
2 3 4
Input: N = 4
Output:
1 2 0 0
1 3 4 0
2 3 4 2
2 3 1 4

Approach: For printing a Lower Hessenberg matrix with one-digit positive elements print zero for all cells of the matrix where j > i + 1 and any single-digit random number with help of rand() function.
Below is the implementation of the above approach:

## C++

 `// C++ implementation of the approach``#include ``using` `namespace` `std;` `// Function to print the Lower Hessenberg``// matrix of order n``void` `LowerHessenbergMatrix(``int` `n)``{``    ``for` `(``int` `i = 1; i <= n; i++) {``        ``for` `(``int` `j = 1; j <= n; j++) {` `            ``// If element is above super-diagonal``            ``// then print 0``            ``if` `(j > i + 1)``                ``cout << ``'0'` `<< ``" "``;` `            ``// Print a random digit for``            ``// every non-zero element``            ``else``                ``cout << ``rand``() % 10 << ``" "``;``        ``}``        ``cout << ``"\n"``;``    ``}``}` `// Driver code``int` `main()``{``    ``int` `n = 4;``    ``LowerHessenbergMatrix(n);` `    ``return` `0;``}`

## Java

 `// Java implementation of the approach``class` `GFG``{` `// Function to print the Lower Hessenberg``// matrix of order n``static` `void` `LowerHessenbergMatrix(``int` `n)``{``    ``for` `(``int` `i = ``1``; i <= n; i++)``    ``{``        ``for` `(``int` `j = ``1``; j <= n; j++)``        ``{` `            ``// If element is above super-diagonal``            ``// then print 0``            ``if` `(j > i + ``1``)``                ``System.out.print(``'0'` `+ ``" "``);` `            ``// Print a random digit for``            ``// every non-zero element``            ``else``            ``{``                ``System.out.printf(``"%.0f"``,Math.random() * ``10``);``                ``System.out.print(``" "``);``            ``}``        ``}``        ``System.out.println(``"\n"``);``    ``}``}` `// Driver code``public` `static` `void` `main(String[] args)``{``    ``int` `n = ``4``;``    ``LowerHessenbergMatrix(n);``}``}` `/* This code is contributed by PrinciRaj1992 */`

## Python3

 `# Python3 implementation of the approach``import` `random` `# Function to print the Upper Hessenberg``# matrix of order n``def` `UpperHessenbergMatrix(n):` `    ``for` `i ``in` `range``(``1``, n ``+` `1``):` `        ``for` `j ``in` `range``(``1``, n ``+` `1``):` `        ``# If element is below sub-diagonal``        ``# then pr0``            ``if` `(j > i ``+` `1``):``                ``print``(``'0'``, end ``=` `" "``)` `            ``# Pra random digit for``            ``# every non-zero element``            ``else``:``                ``print``(random.randint(``1``, ``10``),``                                 ``end ``=` `" "``)``        ``print``()` `# Driver code``n ``=` `4``;``UpperHessenbergMatrix(n)` `# This code is contributed by Mohit Kumar`

## C#

 `// C# implementation of the approach``using` `System;` `class` `GFG``{``    ` `    ``// Function to print the Lower Hessenberg``    ``// matrix of order n``    ``static` `void` `LowerHessenbergMatrix(``int` `n)``    ``{``        ``Random rand = ``new` `Random();``        ` `        ``for` `(``int` `i = 1; i <= n; i++)``        ``{``            ``for` `(``int` `j = 1; j <= n; j++)``            ``{``    ` `                ``// If element is above super-diagonal``                ``// then print 0``                ``if` `(j > i + 1)``                    ``Console.Write(0 + ``" "``);``    ` `                ``// Print a random digit for``                ``// every non-zero element``                ``else``                    ``Console.Write(rand.Next(1, 10) + ``" "``);``            ``}``            ``Console.WriteLine();``        ``}``    ``}``    ` `    ``// Driver code``    ``static` `public` `void` `Main ()``    ``{``        ``int` `n = 4;``        ``LowerHessenbergMatrix(n);``    ``}``}   ` `// This code is contributed by AnkitRai01`

## Javascript

 ``

Output:

```3 6 0 0
7 5 3 0
5 6 2 9
1 2 7 0```

Time Complexity: O(n2)

Auxiliary Space: O(1)

My Personal Notes arrow_drop_up