Array Exercises
Write a C program to read elements in a matrix and find sum of lower triangular matrix. How to find sum of lower triangular matrix in C. Logic to find sum of lower triangular matrix in C programming.
Required knowledge
Basic C programming, C for loop, ArrayS
Lower triangular matrix
Lower triangular matrix is a special square matrix whole all elements above the main diagonal is zero.

Logic to find sum of lower triangular matrix
To find sum of lower triangular matrix, we need to find the sum of elements marked in the red triangular area.

For any matrix A sum of lower triangular matrix elements is defined as -
sum = sum + Aij (Where j < i).
Program to find sum of lower triangular matrix
/** * C program to find sum of lower triangular matrix */ #include <stdio.h> #define MAX_ROWS 3 #define MAX_COLS 3 int main() { int A[MAX_ROWS][MAX_COLS]; int row, col, sum = 0; /* 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", &A[row][col]); } } /* Find sum of lower triangular matrix */ for(row=0; row<MAX_ROWS; row++) { for(col=0; col < MAX_COLS; col++) { if(col<row) { sum += A[row][col]; } } } printf("Sum of lower triangular matrix = %d", sum); return 0; }
Output
Enter elements in matrix of size 3x3:
10 0 0
40 50 0
70 80 90
Sum of lower triangular matrix = 190
Process returned 0 (0x0) execution time : 31.018 s
Program to find sum of lower triangular matrix
/** * C program to find sum of lower triangular matrix */ #include <stdio.h> int main() { int A[10][10]; int row, col, sum = 0,m,n; printf("Enter number of rows:"); scanf("%d",&m); printf("Enter number of columns:"); scanf("%d",&n); /* Input elements in matrix from user */ printf("Enter elements in matrix of size %dx%d: \n", m, n); for(row=0; row<m; row++) { for(col=0; col<n; col++) { scanf("%d", &A[row][col]); } } /* Find sum of lower triangular matrix */ for(row=0; row<m; row++) { for(col=0; col<n; col++) { if(col<row) { sum += A[row][col]; } } } printf("Sum of lower triangular matrix = %d", sum); return 0; }