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

C++ प्रोग्राम दी गई संख्याओं की सूची के सभी संभावित संयोजनों को उत्पन्न करने के लिए

यह दी गई संख्याओं की सूची के सभी संभावित संयोजनों को उत्पन्न करने के लिए एक C++ प्रोग्राम है

एल्गोरिदम

Begin
   Take the number of elements and the elements as input.
   function Combi(char a[], int reqLen, int s, int currLen, bool check[], int l) :
   If currLen>reqLen then
   Return
   Else if currLen=reqLen then
      Then print the new generated sequence.
   If s=l then
      Then return no further element is left.
   For every index there are two option:
   either proceed with a start as ‘true’ and recursively call Combi() with incremented value of ‘currLen’ and ‘s’.
   Or proceed with a start as ‘false’ and recursively call Combi() with only incremented value of ‘s’.
End

उदाहरण

#include<iostream>
using namespace std;
void Combi(char a[], int reqLen, int s, int currLen, bool check[], int l)
// print the all possible combination of given array set
{
   if(currLen > reqLen)
   return;
   else if (currLen == reqLen) {
      cout<<"\t";
      for (int i = 0; i < l; i++) {
         if (check[i] == true) {
            cout<<a[i]<<" ";
         }
      }
      cout<<"\n";
      return;
   }
   if (s == l) {
      return;
   }
   check[s] = true;
   Combi(a, reqLen, s + 1, currLen + 1, check, l);
      //recursively call Combi() with incremented value of ‘currLen’ and ‘s’.
   check[s] = false;
   Combi(a, reqLen, s + 1, currLen, check, l);
      // recursively call Combi() with only incremented value of ‘s’.
}
int main() {
   int i,n;
   bool check[n];
   cout<<"Enter the number of element array have: ";
   cin>>n;
   char a[n];
   cout<<"\n";
   for(i = 0; i < n; i++) {
      cout<<"Enter "<<i+1<<" element: ";
      cin>>a[i];
      check[i] = false;
   }
   for(i = 1; i <= n; i++) {
      cout<<"\nThe all possible combination of length "<<i<<" for the given array set:\n";
      Combi(a, i, 0, 0, check, n);
   }
   return 0;
}

आउटपुट

Enter the number of element array have: 4
Enter 1 element: 4
Enter 2 element: 3
Enter 3 element: 2
Enter 4 element: 1
The all possible combination of length 1 for the given array set:
4
3
2
1
The all possible combination of length 2 for the given array set:
4 3
4 2
4 1
3 2
3 1
2 1
The all possible combination of length 3 for the given array set:
4 3 2
4 3 1
4 2 1
3 2 1
The all possible combination of length 4 for the given array set:
4 3 2 1

  1. C++ प्रोग्राम दिए गए रेंज के बीच प्राइम नंबर जेनरेट करने के लिए इरेटोस्थनीज की चलनी को लागू करने के लिए

    यह दिए गए रेंज के बीच प्राइम नंबर जेनरेट करने के लिए सिव ऑफ एराटोस्थनीज को लागू करने के लिए सी ++ प्रोग्राम है। इस पद्धति में, सभी तत्वों के साथ एक पूर्णांक सरणी शून्य से आरंभ होती है। यह इस प्रकार है जहां प्रत्येक गैर-अभाज्य तत्व के सूचकांक को नेस्टेड लूप के अंदर 1 के रूप में चिह्नित किया जाता है।

  1. सी # प्रोग्राम सूची में सभी नंबरों को गुणा करने के लिए

    सबसे पहले, सूची सेट करें - List<int> myList = new List<int> () {    5,    10,    7 }; अब, एक वेरिएबल का मान 1 पर सेट करें जो हमें गुणा करने में मदद करेगा - int prod = 1; लूप करें और उत्पाद प्राप्त करें - foreach(int i in myList) {    prod = prod*

  1. पायथन में दिए गए स्ट्रिंग के अक्षरों के सभी संभावित संयोजनों की सूची खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एक स्ट्रिंग s है। हमें s के अक्षरों के सभी संभावित संयोजनों को खोजना है। यदि वर्णों के एक ही सेट के साथ दो तार हैं, तो उनमें से सबसे छोटी शब्दावली दिखाएं। और एक बाधा यह है कि s में प्रत्येक वर्ण अद्वितीय है। इसलिए, यदि इनपुट s =pqr जैसा है, तो आउटपुट [r, qr, q, pr, pqr, pq, p