ด้วยเมทริกซ์ของ n x n ภารกิจคือการพิมพ์เมทริกซ์ของ n x n ในรูปแบบสามเหลี่ยมล่าง
เมทริกซ์สามเหลี่ยมล่างเป็นเมทริกซ์ที่มีองค์ประกอบต่ำกว่าเส้นทแยงมุมหลัก รวมถึงองค์ประกอบแนวทแยงหลักและองค์ประกอบที่พักเป็นศูนย์
มาทำความเข้าใจสิ่งนี้ด้วยความช่วยเหลือของไดอะแกรม -
เหนือองค์ประกอบที่เป็นสีเขียวคือองค์ประกอบที่อยู่ด้านล่างแนวทแยงหลัก และองค์ประกอบสีแดงคือองค์ประกอบที่อยู่เหนือองค์ประกอบในแนวทแยงหลักซึ่งถูกตั้งค่าเป็นศูนย์
ตัวอย่าง
Input: matrix[3][3] = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } } Output: 1 0 0 4 5 0 7 8 9
อัลกอริทึม
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
ตัวอย่าง
#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; }
ผลลัพธ์
หากเราเรียกใช้โปรแกรมด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้ -
1 0 0 4 5 0 7 8 9