Write a C program to read elements in a matrix and check whether the matrix is a lower triangular matrix or not. C program to find whether the matrix is lower triangular or not. Logic to find lower triangular matrix in C programming.
Example
Input
Input elements in matrix: 1 0 0 4 5 0 7 8 9
Output
Matrix is lower triangular
Required knowledge
Basic C programming, For loop, Array
Lower triangular matrix
Lower triangular matrix is a special square matrix whose all elements above the main diagonal is zero.
Read more – Program to find upper triangular matrix
Logic to find lower triangular matrix
To find whether a matrix is lower triangular or not we need to check if all elements above main diagonal of the matrix is zero or not.
For any matrix A if elements Aij = 0 (Where j ≥ i). Means, if(array[row][col] == 0) and j > i then it is lower triangular matrix.
Program to find lower triangular matrix
/**
* C program to find lower triangular matrix
*/
#include <stdio.h>
#define MAX_ROWS 3
#define MAX_COLS 3
int main()
{
int array[MAX_ROWS][MAX_COLS];
int row, col, isLower;
/* Input elements in matrix from user */
printf("Enter elements in matrix of size %dx%d: \n", MAX_ROWS, MAX_COLS);
for(row=0; row<MAX_ROWS; row++)
{
for(col=0; col<MAX_COLS; col++)
{
scanf("%d", &array[row][col]);
}
}
/* Check whether the matrix is lower triangular matrix */
isLower = 1;
for(row=0; row<MAX_ROWS; row++)
{
for(col=0; col<MAX_COLS; col++)
{
/*
* If elements above main diagonal(col>row)
* is not equal to zero(array[row][col]!=0)
*/
if(col>row && array[row][col]!=0)
{
isLower = 0;
}
}
}
/*
* If matrix is lower triangular matrix
*/
if(isLower == 1)
{
printf("\nMatrix is Lower triangular matrix: \n");
/* Print elements of lower triangular matrix */
for(row=0; row<MAX_ROWS; row++)
{
for(col=0; col<MAX_COLS; col++)
{
printf("%d ", array[row][col]);
}
printf("\n");
}
}
else
{
printf("\nMatrix is not a Lower triangular matrix");
}
return 0;
}
Output
Enter elements in matrix of size 3x3: 1 0 0 4 5 0 7 8 9 Matrix is Lower triangular matrix: 1 0 0 4 5 0 7 8 9
Happy coding 😉