# Java Program to Display Upper Triangular Matrix

• Last Updated : 20 Jul, 2021

Upper Triangular Matrix is a matrix in which all the elements below the principal matrix are 0. A necessary condition is that matrix must be Square matrix in nature. If the matrix is not a square matrix, it can never be called the upper triangular matrix.

### Examples

```Input 1: mat[][] = { {2, 1, 4},
{1, 2, 3},
{3, 6, 2} }

Output :  mat[][]= { {2, 1, 4},
{0, 2, 3},
{0, 0, 2} }

Explaination: All the element below the principal diagonal needs to be 0.

Input 2 :   mat[][]=  { {4,7},
{2,8} }

Output :   mat[][]=   { {4,7},
{0,8} }

Input 3 :  mat[][]=  { {2,1,4,6},
{1,2,3,7},
{3,6,2,8} }
Output :   Matrix should be a Square Matrix```

Approach:

• If the matrix has equal rows and columns, continue the program else exit the program.
• Run the loop over the whole matrix, and for the rows whose row number is greater than column number, make the element at that position equal to 0.

Below is the implementation of the above approach:

## Java

 `// Java Program to print the upper triangular matrix``import` `java.io.*;` `class` `GFG {``  ` `    ``// Print matrix using iterative approach``    ``public` `static` `void` `printMatrix(``int``[][] a)``    ``{``        ``for` `(``int` `i = ``0``; i < a.length; i++) {``            ``for` `(``int` `j = ``0``; j < a[``0``].length; j++)``                ``System.out.print(a[i][j] + ``" "``);``            ``System.out.println();``        ``}``    ``}``    ``public` `static` `void` `upperTriangularMatrix(``int` `matrix[][])``    ``{``        ``int` `row = matrix.length;``        ``int` `col = matrix[``0``].length;``      ` `        ``// if number of rows and``        ``// columns are not equal,then``        ``// return back``        ``if` `(row != col) {``            ``System.out.println(``                ``"Matrix should be a Square Matrix"``);``            ``return``;``        ``}``        ``else` `{``          ` `            ``// looping over the whole matrix``            ``for` `(``int` `i = ``0``; i < row; i++) {``                ``for` `(``int` `j = ``0``; j < col; j++) {``                  ` `                    ``// for the rows ,whose row number is``                    ``// greater then column number,mark the``                    ``// element as 0``                    ``if` `(i > j) {``                        ``matrix[i][j] = ``0``;``                    ``}``                ``}``            ``}` `            ``System.out.println(``                ``"Upper Triangular Matrix is given by :-"``);``          ` `            ``// printing the upper triangular matrix``            ``printMatrix(matrix);``        ``}``    ``}``    ``public` `static` `void` `main(String[] args)``    ``{``        ``int` `mat[][] = { { ``2``, ``1``, ``4` `}, { ``1``, ``2``, ``3` `}, { ``3``, ``6``, ``2` `} };``      ` `        ``// calling the function``        ``upperTriangularMatrix(mat);``    ``}``}`
Output
```Upper Triangular Matrix is given by :-
2 1 4
0 2 3
0 0 2 ```

Space Complexity: 0(N^2)

Time Complexity: 0(N^2)

My Personal Notes arrow_drop_up