एक वर्ग मैट्रिक्स दिया गया है 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