একটি বর্গাকার ম্যাট্রিক্স দেওয়া হল M[r][c] যেখানে 'r' হল কিছু সংখ্যক সারি এবং 'c' হল কলাম যেমন r =c, আমাদের পরীক্ষা করতে হবে যে 'M' উপরের ত্রিভুজাকার ম্যাট্রিক্স কিনা।
উর্ধ্ব ত্রিভুজাকার ম্যাট্রিক্স
ঊর্ধ্ব ত্রিভুজাকার ম্যাট্রিক্স হল একটি ম্যাট্রিক্স যেখানে প্রধান কর্ণের উপরের উপাদানগুলি (প্রধান কর্ণ সহ) শূন্য নয় এবং নীচের উপাদানগুলি কেবল শূন্য৷
নিচের উদাহরণের মত -
উপরের চিত্রে লাল হাইলাইট করা উপাদানগুলি প্রধান তির্যক থেকে নিম্ন উপাদান যা শূন্য এবং বাকি উপাদানগুলি অ-শূন্য৷
উদাহরণ
Input: m[3][3] = { {1, 2, 3}, {0, 5, 6}, {0, 0, 9}} Output: yes Input: m[3][3] == { {3, 0, 1}, {6, 2, 0}, {7, 5, 3} } Output: no
অ্যালগরিদম
Start Step 1 -> define macro as #define size 4 Step 2 -> Declare function to check matrix is lower triangular matrix bool check(int arr[size][size]) Loop For int i = 1 and i < size and i++ Loop For int j = 0 and j < i and j++ IF (arr[i][j] != 0) return false End End End Return true Step 3 -> In main() Declare int arr[size][size] = { { 1, 1, 3, 2 }, { 0, 3, 3, 2 }, { 0, 0, 2, 1 }, { 0, 0, 0, 1 } } IF (check(arr)) Print its a lower triangular matrix End Else Print its not a lower triangular matrix End Stop
উদাহরণ
#include <bits/stdc++.h> #define size 4 using namespace std; // check matrix is lower triangular matrix bool check(int arr[size][size]){ for (int i = 1; i < size; i++) for (int j = 0; j < i; j++) if (arr[i][j] != 0) return false; return true; } int main(){ int arr[size][size] = { { 1, 1, 3, 2 }, { 0, 3, 3, 2 }, { 0, 0, 2, 1 }, { 0, 0, 0, 1 } }; if (check(arr)) cout << "its a lower triangular matrix"; else cout << "its not a lower triangular matrix"; return 0; }
আউটপুট
its a lower triangular matrix