Cプログラムで指定された配列から下三角行列パターンを印刷します。
n x nの行列が与えられた場合、タスクはnxnの行列を下三角パターンで印刷することです。
下三角行列は、主対角要素と残りの要素をゼロとして含む、主対角の下の要素を持つ行列です。
ダイアグラムを使ってこれを理解しましょう-
緑の要素の上は主対角線の下の要素であり、赤の要素は主対角線より上の要素であり、ゼロとして設定されています。
例
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
-
Cプログラムの指定された行列のゼロの数でソートされた列のインデックスを出力します。
サイズNxMの配列が与えられ、N行数とM列数であり、タスクは、任意の列に存在するゼロの数に基づいてソート操作を実行した後、対応する行列のすべての列のゼロの数を出力することです。 たとえば、1番目の st 列には1つのゼロと2つのndが含まれます 列にゼロと3番目のrdが含まれていません 列に2つのゼロが含まれている場合、結果は− 312になります。 例 Input: 0 0 0 1 1 1 1 0 1 Output: 1 3 2 説明 注 −マトリックスはインデックス1から開始したと見なされます。 例
-
行列がC++で下三角行列であるかどうかをチェックするプログラム
正方行列M[r][c]が与えられます。ここで、「r」は行の数であり、「c」はr =cのような列であるため、「M」が下三角行列であるかどうかを確認する必要があります。 下三角行列- 下三角行列は、主対角線の下の要素(主対角線を含む)がゼロではなく、上の要素がゼロのみである行列です。 以下の例のように- 上の図で、赤で強調表示されている要素は、主対角線の上の要素であり、ゼロであり、残りの要素はゼロではありません。 例 Input: m[3][3] = { {1, 0, 0}, {2, 3, 0}, {4, 5, 6}} Output: