एक स्क्वायर मैट्रिक्स M[r][c] दिया गया है जहां 'r' पंक्तियों की कुछ संख्या है और 'c' कॉलम हैं जैसे कि r = c, हमें जांचना है कि 'M' अपर ट्रायंगुलर मैट्रिक्स है या नहीं।
अपर ट्रायंगुलर मैट्रिक्स
अपर ट्रायंगुलर मैट्रिक्स वह मैट्रिक्स है जिसमें मुख्य विकर्ण के ऊपर के एलिमेंट्स (मुख्य विकर्ण सहित) शून्य नहीं हैं और नीचे के एलिमेंट्स केवल शून्य हैं।
नीचे दिए गए उदाहरण की तरह -

उपरोक्त चित्र में लाल हाइलाइटेड एलिमेंट्स मुख्य विकर्ण से नीचे के एलिमेंट्स हैं जो शून्य हैं और बाकी एलिमेंट्स नॉन-जीरो हैं।
उदाहरण
इनपुट: m[3][3] = { {1, 2, 3}, {0, 5, 6}, {0, 0, 9}} आउटपुट: हां इनपुट: m[3][3] == { {3, 0, 1}, {6, 2, 0}, {7, 5, 3} } आउटपुट: नहींएल्गोरिदम
Start Step 1 -> मैक्रो डिफाइन करें #define size 4 Step 2 -> मैट्रिक्स लोअर ट्रायंगुलर है या नहीं जांचने का फंक्शन डिक्लेयर करें bool check(int arr[size][size]) Loop int i = 1 से i < size और i++ तक Loop int j = 0 से j < i और j++ तक IF (arr[i][j] != 0) return false End End End Return true Step 3 -> main() में int arr[size][size] = { { 1, 1, 3, 2 }, { 0, 3, 3, 2 }, { 0, 0, 2, 1 }, { 0, 0, 0, 1 } } डिक्लेयर करें IF (check(arr)) यह एक लोअर ट्रायंगुलर मैट्रिक्स है प्रिंट करें End Else यह लोअर ट्रायंगुलर मैट्रिक्स नहीं है प्रिंट करें End Stopउदाहरण
#include <bits/stdc++.h> #define size 4 using namespace std; // मैट्रिक्स लोअर ट्रायंगुलर है या नहीं जांचें 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