Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

C++ में वर्ग मैट्रिक्स के दो विकर्णों में पंक्ति-वार सामान्य तत्व


इनपुट के रूप में 2D वर्ग मैट्रिक्स दिया गया है। लक्ष्य उन तत्वों को खोजना है जो इसके प्राथमिक और द्वितीयक विकर्णों दोनों में समान हैं। यदि इनपुट मैट्रिक्स है

1 2 3
2 2 4
1 4 7

तब इसका प्राथमिक विकर्ण 1 2 7 है और द्वितीयक विकर्ण 3 2 1 है। सामान्य तत्व 2 है।

दोनों में कम से कम एक समान तत्व हमेशा रहेगा।

उदाहरण

इनपुट - मैट्रिक्स[][5] ={{1, 2, 1}, {4, 1, 6}, {1, 8, 1}};

आउटपुट − विकर्णों में पंक्ति-वार सामान्य तत्व:3

स्पष्टीकरण - मैट्रिक्स है:

1 2 1
4 1 6
1 8 1

प्राथमिक विकर्ण=1 1 1, द्वितीयक विकर्ण=1 1 1

सभी 3 मान सामान्य हैं। गिनती=3

इनपुट - मैट्रिक्स[][5] ={{1, 4, 4, 1}, {3, 4, 4, 6}, {1, 1, 1, 4}, {1, 9, 9, 2}};

आउटपुट − विकर्णों में पंक्ति-वार सामान्य तत्व:3

स्पष्टीकरण - मैट्रिक्स है:

1 4 4 1
3 4 4 6
1 1 1 4
1 9 9 2

प्राथमिक विकर्ण=1 4 1 2, द्वितीयक विकर्ण=1 4 1 1

पहले 3 मान सामान्य हैं। गिनती=3

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

इस दृष्टिकोण में हम पहले पंक्ति 0 से वर्ग मैट्रिक्स पंक्ति-वार पार करेंगे। प्रत्येक पंक्ति के लिए जाँच करें कि क्या तत्व M[i] [i] M[i] [आकार-i-1] के बराबर है। यदि हाँ तो दोनों विकर्णों का सामान्य अवयव, वेतन वृद्धि गणना।

  • इनपुट मैट्रिक्स मैट्रिक्स [][5] लें।

  • इसका आकार निर्धारित करें।

  • फ़ंक्शन countElement(int mt[][5], int size) इनपुट मैट्रिक्स और उसका आकार लेता है और प्राथमिक और माध्यमिक दोनों विकर्णों में सामान्य मानों की गिनती देता है।

  • प्रारंभिक गणना 0 के रूप में लें।

  • लूप के लिए i=0 से i तक का उपयोग करके ट्रैवर्स करें

  • अगर mt[i][i] ==mt[i][size-i-1] तो इंक्रीमेंट काउंट।

  • अंत में परिणाम के रूप में वापसी की गणना करें।

  • परिणाम को मुख्य रूप से प्रिंट करें।

उदाहरण

#include <iostream>
using namespace std;
int countElement(int mt[][5], int size){
   int count = 0;
   for (int i=0;i<size;i++){
      if (mt[i][i] == mt[i][size-i-1]){
         count=count+1;
      }
   }
   return count;
}
int main(){
   int Matrix[][5] = {{1, 2, 1}, {4, 1, 6}, {1, 8, 1}};
   int size=3;
   cout<<"Row-wise common elements in diagonals:"<<countElement(Matrix, size);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा

Row-wise common elements in diagonals:3

  1. मैट्रिक्स में कुल तत्वों को खोजने के लिए सी ++ कोड

    मान लीजिए, हमें n पंक्तियों और m स्तंभों का एक मैट्रिक्स दिया गया है। हमें इसमें मौजूद तत्वों की संख्या का पता लगाना है। हम मूल्य का पता लगाते हैं और इसे आउटपुट के रूप में प्रदर्शित करते हैं। इसलिए, यदि इनपुट n =20, m =15 जैसा है, तो आउटपुट 300 होगा। कदम इसे हल करने के लिए, हम इन चरणों का पालन करे

  1. C++ में मैट्रिक्स की पंक्ति-वार बनाम स्तंभ-वार ट्रैवर्सल

    एक मैट्रिक्स को दो तरह से ट्रेस किया जा सकता है। रो-माइस ट्रैवर्सल पहली पंक्ति से शुरू होकर दूसरी और इसी तरह अंतिम पंक्ति तक एक-एक करके प्रत्येक पंक्ति का दौरा करता है। पंक्ति में तत्वों को सूचकांक 0 से अंतिम सूचकांक में लौटाया जाता है। कॉलम-वार ट्रैवर्सल में, तत्वों को पहले कॉलम से अंतिम कॉलम तक क

  1. C++ में दो बाइनरी सर्च ट्री में सभी तत्व

    मान लीजिए कि हमारे पास दो बाइनरी सर्च ट्री हैं, हमें मानों की एक सूची वापस करनी होगी, जिसमें इन पेड़ों में सभी तत्व मौजूद हैं, और सूची तत्व आरोही क्रम में होंगे। तो अगर पेड़ जैसे हैं - तब आउटपुट [0,1,1,2,3,4] होगा। इसे हल करने के लिए, हम इन चरणों का पालन करेंगे - एक सरणी को परिभाषित करें जिसे a