Với ma trận n x n, nhiệm vụ là in ma trận n x n đó ở dạng hình tam giác dưới.
Ma trận tam giác dưới là ma trận có các phần tử bên dưới đường chéo nguyên tắc bao gồm các phần tử đường chéo nguyên tắc và các phần tử còn lại bằng không.
Hãy hiểu điều này với sự trợ giúp của một sơ đồ -
Phía trên các phần tử có màu xanh lá cây là các phần tử bên dưới đường chéo nguyên tắc và các phần tử màu đỏ là các phần tử phía trên đường chéo nguyên tắc được đặt bằng không.
Ví dụ
Input: matrix[3][3] = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } } Output: 1 0 0 4 5 0 7 8 9
Thuật toán
int lower_mat(int mat[n][m]) START STEP 1: DECLARE I AND j STEP 2 : LOOP FOR i = 0 AND i < n AND i++ LOOP FOR j = 0 AND j < m AND j++ IF i < j THEN, PRINT "0\t" ELSE PRINT mat[i][j] END IF END FOR PRINT newline END FOR STOP
Ví dụ
#include <stdio.h> #define n 3 #define m 3 int lower_mat(int mat[n][m]){ int i, j; for ( i = 0; i < n; i++){ for ( j = 0; j < m; j++){ if( i < j ) printf("0\t"); else printf("%d\t", mat[i][j]); } printf("\n"); } } int main(int argc, char const *argv[]){ int mat[n][m] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; lower_mat(mat); return 0; }
Đầu ra
Nếu chúng ta chạy chương trình trên thì nó sẽ tạo ra kết quả sau -
1 0 0 4 5 0 7 8 9