शुरू करेंमुफ़्त में शुरू करें

पासा फेंकें

आइए एक अनंत जेनरेटर बनाते हैं! आपका काम simulate_dice_throws() जेनरेटर परिभाषित करना है. यह 6-पक्षीय पासे के परिणामों को डिक्शनरी out के रूप में जनरेट करता है. हर key एक संभव परिणाम है (1, 2, 3, 4, 5, 6). हर value एक सूची है: पहला मान उस परिणाम की कुल आवृत्ति (realizations) है और दूसरा, कुल फेंकों total के अनुपात में वह आवृत्ति. उदाहरण के लिए (जब total = 4):

{
  1: [2, 0.5],
  2: [1, 0.25],
  3: [1, 0.25],
  4: [0, 0.0],
  5: [0, 0.0],
  6: [0, 0.0]
}

टिप: random मॉड्यूल (पहले से इम्पोर्ट किया गया) की randint() फंक्शन का उपयोग करें. यह दिए गए इंटरवल में एक रैंडम पूर्णांक जनरेट करता है (उदा. randint(1, 2) या तो 1 होगा या 2).

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में कोडिंग इंटरव्यू प्रश्नों का अभ्यास

पाठ्यक्रम देखें

अभ्यास निर्देश

  • नया नंबर पाने के लिए एक बार पासा फेंकने का सिमुलेशन करें.
  • संबंधित संख्या और उसके अनुपात को अपडेट करें.
  • अपडेटेड डिक्शनरी को yield करें.
  • जेनरेटर बनाएँ और 1000 फेंकों का सिमुलेशन करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

def simulate_dice_throws():
    total, out = 0, dict([(i, [0, 0]) for i in range(1, 7)])
    while True:
        # Simulate a single toss to get a new number
        num = ____
        total += 1
        # Update the number and the ratio of realizations
        out[num][0] = ____
        for j in range(1, 7):
        	out[j][1] = round(____/____, 2)
        # Yield the updated dictionary
        ____

# Create the generator and simulate 1000 tosses
dice_simulator = ____
for i in range(1, 1001):
    print(str(i) + ': ' + str(____(____)))
कोड संपादित करें और चलाएँ