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

C++ में Rand7() का उपयोग करके Rand10 () को लागू करें

मान लीजिए कि हमारे पास एक फ़ंक्शन रैंड 7 है जो 1 से 7 की सीमा में एक समान यादृच्छिक पूर्णांक उत्पन्न करता है, हमें एक और फ़ंक्शन रैंड 10 लिखना होगा जो 1 से 10 की सीमा में एक समान यादृच्छिक पूर्णांक उत्पन्न करता है। हम यादृच्छिक संख्या उत्पन्न करने के लिए कुछ लाइब्रेरी फ़ंक्शन का उपयोग नहीं कर सकते हैं।

मान लीजिए कि हमें दो यादृच्छिक संख्याएँ चाहिए, तो वे [8,10] हो सकती हैं।

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • रैंड40 :=40
  • रैंड 40>=40
    • rand40 :=(rand7() - 1) * 7 + (rand7() - 1)
  • वापसी रैंड40 मॉड 10 + 1

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

उदाहरण

#include <bits/stdc++.h>
using namespace std;
int rand7(){
   return 1 + rand() % 7;
}
class Solution {
   public:
   int rand10() {
      int rand40 = 40;
      while(rand40 >= 40){
         rand40 = (rand7() - 1) * 7 + (rand7() - 1);
      }
      return rand40 % 10 + 1;
   }
};
main(){
   srand(time(NULL));
   Solution ob;
   cout << (ob.rand10()) << endl;
   cout << (ob.rand10()) << endl;
   cout << (ob.rand10()) << endl;
}

इनपुट

Call the function three times

आउटपुट

2
2
6

  1. सी ++ प्रोग्राम ऐरे का उपयोग करके कतार को लागू करने के लिए

    एक कतार एक सार डेटा संरचना है जिसमें तत्वों का संग्रह होता है। कतार लागू करता हैफीफो तंत्र यानी पहले डाला गया तत्व भी पहले हटा दिया जाता है। दूसरे शब्दों में, हाल ही में जोड़े गए कम से कम तत्व को कतार में सबसे पहले हटा दिया जाता है। एक प्रोग्राम जो एक सरणी का उपयोग करके कतार को लागू करता है, वह इस

  1. सी ++ प्रोग्राम लिंक्ड लिस्ट का उपयोग करके स्टैक को लागू करने के लिए

    स्टैक एक सार डेटा संरचना है जिसमें तत्वों का संग्रह होता है। स्टैक LIFO तंत्र को लागू करता है यानी अंत में धकेले जाने वाले तत्व को पहले पॉप आउट किया जाता है। स्टैक में कुछ सिद्धांत संचालन हैं - पुश - यह स्टैक के शीर्ष पर डेटा मान जोड़ता है। पॉप - यह स्टैक के शीर्ष पर डेटा मान को हटा देता है।

  1. सी ++ प्रोग्राम सरणी का उपयोग करके स्टैक को लागू करने के लिए

    स्टैक एक सार डेटा संरचना है जिसमें तत्वों का संग्रह होता है। स्टैक LIFO तंत्र को लागू करता है यानी अंत में धकेले जाने वाले तत्व को पहले पॉप आउट किया जाता है। स्टैक में कुछ सिद्धांत संचालन हैं - पुश - यह स्टैक के शीर्ष पर डेटा मान जोड़ता है। पॉप - यह स्टैक के शीर्ष पर डेटा मान को हटा देता है