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

सी ++ में एनएक्सएम मैट्रिक्स की प्रत्येक पंक्ति में मौजूद एक सरणी के तत्वों की गणना

हमें पूर्णांक प्रकार के तत्वों की एक सरणी और दी गई पंक्ति और स्तंभ आकार की एक मैट्रिक्स या 2-डी सरणी दी जाती है और कार्य एक मैट्रिक्स की प्रत्येक पंक्ति में मौजूद एक सरणी के तत्वों की गणना की गणना करना है।

इनपुट

int arr = { 2, 4, 6} and int matrix[row][col] = { { 2, 4, 6 }, {3, 4, 6}, {6, 2, 1}}

आउटपुट

Elements of array in row 1 are: 3
Elements of array in row 2 are: 2
Elements of array in row 3 are: 2

स्पष्टीकरण

we are having array containing 2, 4 and 6 as elements and now we will check the occurrences of 3 elements in every row of matrix by matching the elements of an array with the elements of a matrix, like, 2, 4 and 6 all are present in first row of matrix so the count of elements for row 1 is 3, similarly, count of elements for row 2 is 2 as only 4 and 6 are there and count of elements for row 3 is 2 as only 2 and 6 are there.

इनपुट

int arr = { 1, 3} and int matrix[row][col] = { { 1, 4, 6 }, {3, 1, 6}, {6, 2, 4}}

आउटपुट

Elements of array in row 1 are: 1
Elements of array in row 2 are: 2
Elements of array in row 3 are: 0

स्पष्टीकरण

we are having array containing 1 and 3 as elements and now we will check the occurrences of 2 elements in every row of matrix by matching the elements of an array with theelements of a matrix, like, only 1 is present in first row of matrix so the count of elements for row 1 is 1, similarly, count of elements for row 2 is 2 as 1 and 3 both are there and count of elements for row 3 is 0 as none of 1 and 3 are there.

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

दी गई समस्या को हल करने के लिए कई दृष्टिकोण हो सकते हैं जैसे कि सरल दृष्टिकोण और कुशल दृष्टिकोण। तो आइए सबसे पहले भोले दृष्टिकोण . को देखें ।

  • पूर्णांक तत्वों की एक सरणी और पंक्ति और स्तंभ आकार के मैट्रिक्स को इनपुट करें

  • किसी सरणी के आकार की गणना करें और आगे की प्रक्रिया के लिए सरणी, मैट्रिक्स और सरणी के आकार को फ़ंक्शन में पास करें

  • मैट्रिक्स पंक्ति में मौजूद तत्वों की संख्या को संग्रहीत करने के लिए एक अस्थायी चर गणना करें।

  • 0 से एक मैट्रिक्स के पंक्ति आकार तक के लिए लूप प्रारंभ करें

  • लूप के अंदर, 0 से सरणी के आकार तक प्रारंभ करें

  • गिरफ्तारी के साथ एक अस्थायी सेट करें[k]

  • 0 से एक मैट्रिक्स के कॉलम आकार तक के लिए एक और लूप प्रारंभ करें

  • लूप के अंदर, IF temp =matrix[i][j] जांचें, फिर गिनती को 1 से बढ़ाएं

  • प्रत्येक पंक्ति के परिवर्तन के बाद इसे ताज़ा करने के लिए गिनती को 0 पर सेट करें

  • प्रत्येक पंक्ति के परिवर्तन से पहले गिनती का मान प्रिंट करें।

कुशल दृष्टिकोण

  • पूर्णांक तत्वों की एक सरणी और पंक्ति और स्तंभ आकार के मैट्रिक्स को इनपुट करें

  • किसी सरणी के आकार की गणना करें और आगे की प्रक्रिया के लिए सरणी, मैट्रिक्स और सरणी के आकार को फ़ंक्शन में पास करें

  • 0 से एक मैट्रिक्स के पंक्ति आकार तक के लिए लूप प्रारंभ करें

  • unordered_map प्रकार का वैरिएबल बनाएं

  • 0 से एक मैट्रिक्स के कॉलम आकार तक के लिए एक और लूप प्रारंभ करें

  • मैट्रिक्स के साथ एक अनियंत्रित नक्शा सेट करें [i][j] 1

    . के रूप में
  • मैट्रिक्स पंक्ति में मौजूद तत्वों की संख्या को संग्रहीत करने के लिए एक अस्थायी चर गणना करें।

  • लूप के अंदर, 0 से सरणी के आकार तक प्रारंभ करें

  • IF um[arr[j]]==1 जांचें और फिर गिनती को 1 से बढ़ाएं

  • प्रत्येक पंक्ति के परिवर्तन से पहले गिनती का मान प्रिंट करें।

उदाहरण (बेवकूफ दृष्टिकोण)

#include<bits/stdc++.h>
using namespace std;
#define row 3
#define col 3
void arr_matrix(int matrix[row][col], int arr[], int size){
   int count = 0;
   //for matrix row
   for(int i=0; i<row; i++){
      //for array
      for(int k=0 ; k<size ; k++){
         int temp = arr[k];
         //for matrix col
         for(int j = 0; j<col; j++){
            if(temp == matrix[i][j]){
               count++;
            }
         }
      }
      cout<<"Elements of array in row "<< i + 1 <<" are: " << count << endl;
      count = 0;
   }
}
int main(){
   int matrix[row][col] = { { 2, 4, 6 }, {3, 4, 6}, {6, 2, 1}};
   int arr[] = { 2, 4, 6};
   int size = sizeof(arr) / sizeof(arr[0]);
   arr_matrix(matrix, arr, size);
}

आउटपुट

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

Elements of array in row 1 are: 3
Elements of array in row 2 are: 2
Elements of array in row 3 are: 2

उदाहरण (कुशल दृष्टिकोण)

#include <bits/stdc++.h>
using namespace std;
#define row 3
#define col 3
void arr_matrix(int matrix[row][col], int arr[], int size){
   for (int i = 0; i < row; i++){
      unordered_map<int, int> um;
      for (int j = 0; j < col; j++){
         um[matrix[i][j]] = 1;
      }
      int count = 0;
      for (int j = 0; j < size; j++) {
         if (um[arr[j]])
            count++;
      }
      cout<<"Elements of array in row "<< i + 1 <<" are: " << count << endl;
   }
}
int main(){
   int matrix[row][col] = { { 2, 4, 6 }, {3, 4, 6}, {6, 2, 1}};
   int arr[] = { 2, 4, 6};
   int size = sizeof(arr) / sizeof(arr[0]);
   arr_matrix(matrix, arr, size);
}

आउटपुट

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

Elements of array in row 1 are: 3
Elements of array in row 2 are: 2
Elements of array in row 3 are: 2

  1. C++ में सरणी में मौजूद कुंजी K की प्रायिकता

    आकार एन की एक सरणी के साथ दिया गया है और कार्य किसी सरणी में उपलब्ध होने पर दिए गए तत्व k की संभावना को खोजना है। संपूर्ण सरणी को n तक पार करें जो किसी सरणी में तत्वों की संख्या के बराबर है और दिए गए तत्व या कुंजी k की खोज करें। यदि तत्व किसी सरणी में मौजूद है तो इसकी संभावना की गणना करें अन्यथा 0

  1. C++ में किसी सरणी में सम और विषम तत्वों की संख्या गिनें

    इस ट्यूटोरियल में, हम किसी सरणी में सम और विषम तत्वों की संख्या ज्ञात करने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें एक सरणी प्रदान की जाएगी। हमारा काम दिए गए सरणी में सम और विषम तत्वों की संख्या की गणना करना है। उदाहरण #include<iostream> using namespace std; void CountingEvenOdd(int

  1. सरणी के सभी तत्वों को C++ में 4 से विभाज्य बनाने के लिए न्यूनतम चरण

    समस्या कथन आकार n की एक सरणी को देखते हुए, कार्य सरणी के सभी तत्वों को 4 से विभाज्य बनाने के लिए आवश्यक न्यूनतम चरणों को खोजने के लिए है। एक चरण को सरणी से किन्हीं दो तत्वों को हटाने और इन तत्वों के योग को जोड़ने के रूप में परिभाषित किया गया है। सरणी के लिए उदाहरण यदि इनपुट ऐरे {1, 2, 0, 2, 4, 3}