একটি স্কোয়ার ম্যাট্রিক্স M[r][c] দেওয়া আছে যেখানে 'r' হল কিছু সংখ্যক রো এবং 'c' হল কলাম যাতে r = c। আমাদের যাচাই করতে হবে 'M' লোয়ার ট্রায়্যাঙ্গুলার ম্যাট্রিক্স কিনা।
লোয়ার ট্রায়্যাঙ্গুলার ম্যাট্রিক্স (Lower Triangular Matrix)
লোয়ার ট্রায়্যাঙ্গুলার ম্যাট্রিক্স হল এমন একটি ম্যাট্রিক্স যেটির মেইন ডায়াগোনাল (মেইন ডায়াগোনাল সহ) নিচের এলিমেন্ট গুলো নন-জিরো এবং উপরের এলিমেন্ট গুলো শুধু শূন্য।
নিচের উদাহরণে দেখানো আছে -

উপরের ফিগার-এ লাল হাইলাইট করা এলিমেন্ট গুলো মেইন ডায়াগোনাল থেকে উপরের এলিমেন্ট গুলো যেগুলো শূন্য এবং বাকি এলিমেন্ট গুলো নন-জিরো।
উদাহরণ
ইনপুট: m[3][3] = { {1, 0, 0}, {2, 3, 0}, {4, 5, 6} }
আউটপুট: yes
ইনপুট: m[3][3] == { {3, 0, 1}, {6, 2, 0}, {7, 5, 3} }
আউটপুট: no
অ্যালগরিদম
শুরু
স্টেপ ১ -> #define size 4 ম্যাক্রো ডিফাইন করো
স্টেপ ২ -> ম্যাট্রিক্স লোয়ার ট্রায়্যাঙ্গুলার কিনা চেক করার ফাংশন ডিক্লেয়ার করো
bool check(int arr[size][size])
লুপ i = 0 থেকে i < size এবং i++ পর্যন্ত
লুপ j = i + 1 থেকে j < size এবং j++ পর্যন্ত
If (arr[i][j] != 0)
return false
এন্ড
এন্ড
এন্ড
return true
স্টেপ ৩ -> main()-এ
অ্যারে ডিক্লেয়ার করো int arr[size][size] = { { 1, 0, 0, 0 }, { 2, 3, 0, 0 }, { 4, 5, 6, 0 }, { 7, 8, 9, 10 } }
IF (check(arr))
প্রিন্ট its a lower triangular matrix
এলস
প্রিন্ট its not a lower triangular matrix
স্টপ
উদাহরণ (C++ কোড)
#include <bits/stdc++.h>
#define size 4
using namespace std;
// ম্যাট্রিক্স লোয়ার ট্রায়্যাঙ্গুলার কিনা চেক করো
bool check(int arr[size][size]) {
for (int i = 0; i < size; i++)
for (int j = i + 1; j < size; j++)
if (arr[i][j] != 0)
return false;
return true;
}
int main() {
int arr[size][size] = { { 1, 0, 0, 0 },
{ 2, 3, 0, 0 },
{ 4, 5, 6, 0 },
{ 7, 8, 9, 10 } };
if (check(arr))
cout << "its a lower triangular matrix";
else
cout << "its not a lower triangular matrix";
return 0;
}
আউটপুট
its a lower triangular matrix