ट्रैक
/
Python
Python
/
अभ्यास
/
किंडरगार्टन बगीचा
किंडरगार्टन बगीचा

किंडरगार्टन बगीचा

आसान

परिचय

किंडरगार्टन की कक्षा पौधे उगाने के बारे में सीख रही है। शिक्षक को लगा कि बच्चों को बीज देना अच्छा रहेगा, ताकि वे उन्हें मिट्टी में लगाकर उगा सकें। इसके लिए बच्चों ने खिड़कियों के किनारों पर छोटे-छोटे कप रखे हैं और हर कप में एक तरह का पौधा लगाया है। बच्चों को चार तरह के उपलब्ध बीजों में से अपनी पसंद चुनने का मौका मिला: grass, clover, radishes और violets.

निर्देश

आपको दिए गए आरेख से यह पता लगाना है कि किंडरगार्टन क्लास का हर बच्चा किन पौधों के लिए ज़िम्मेदार है।

क्लास में 12 बच्चे हैं:

  • Alice, Bob, Charlie, David, Eve, Fred, Ginny, Harriet, Ileana, Joseph, Kincaid और Larry.

चार अलग-अलग तरह के बीज बोए जाते हैं:

पौधा आरेख में संकेत
Grass G
Clover C
Radish R
Violet V

हर बच्चे को चार कप मिलते हैं, हर पंक्ति में दो:

[window][window][window]
........................ # each dot represents a cup
........................

टीचर बच्चों को उनके नामों के अंग्रेज़ी वर्णक्रम के अनुसार कप बाँटती हैं, यानी सबसे पहले Alice की बारी आती है और सबसे अंत में Larry की।

यहाँ एक उदाहरण आरेख दिया गया है, जो Alice के पौधे दिखाता है:

[window][window][window]
VR......................
RG......................

पहली पंक्ति खिड़कियों के सबसे पास है। उसमें Alice के पास एक violet और एक radish है। दूसरी पंक्ति में Alice के पास एक radish और कुछ grass है।

आपके प्रोग्राम को पौधे बाएँ से दाएँ तक दिए जाएँगे, और शुरुआत खिड़कियों के सबसे पास वाली पंक्ति से होगी। इससे आपके प्रोग्राम को यह पता लगाना चाहिए कि कौन-से पौधे किस बच्चे के हैं।

उदाहरण के लिए, अगर प्रोग्राम को बताया जाए कि बगीचा ऐसा दिखता है:

[window][window][window]
VRCGVVRVCGGCCGVRGCVCGCGV
VRCCCGCRRGVCGCRVVCVGCGCV

तो अगर उससे Alice के पौधों के बारे में पूछा जाए, तो उसे यह बताना चाहिए:

  • Violets, radishes, violets, radishes

और अगर Bob के पौधों के बारे में पूछा जाए, तो नतीजा यह होगा:

  • Clover, grass, clover, clover

Python ट्रैक पर यह अभ्यास किस तरह बनाया गया है

इस अभ्यास के टेस्ट चाहते हैं कि आपका प्रोग्राम एक Garden class के रूप में लिखा जाए (देखिए classes भी)। अगर आप Python की क्लासों से परिचित नहीं हैं, तो यह Real Python ट्यूटोरियल शुरुआत करने की एक और अच्छी जगह हो सकती है।

आपकी class में plants नाम का एक method होना चाहिए, जो आर्गुमेंट के रूप में एक छात्र का नाम लेता है और उस छात्र से जुड़े पौधों के नामों की list लौटाता है।

कंस्ट्रक्टर

उदाहरण वाला गार्डन बनाना:

[window][window][window]
VRCGVVRVCGGCCGVRGCVCGCGV
VRCCCGCRRGVCGCRVVCVGCGCV

टेस्ट में इसे Garden("VRCGVVRVCGGCCGVRGCVCGCGV\nVRCCCGCRRGVCGCRVVCVGCGCV") के रूप में दर्शाया जाएगा।

इस तरह दर्शाने के लिए आपकी class को एक __init__() स्पेशल मेथड बनाना होगा। अगर आप __init__() या कंस्ट्रक्टर से परिचित नहीं हैं, तो Python के डॉक्स में क्लास और इंस्टेंस ऑब्जेक्ट पर विस्तार से समझाया गया है।

डिफाल्ट पैरामीटर

कुछ टेस्ट में __init__() को आर्गुमेंट के रूप में छात्रों की एक list दी जाती है। इससे समस्या विवरण में दी गई बारह छात्रों की सूची बदल जानी चाहिए। ये दोनों स्टेटमेंट आपके __init__() मेथड के साथ काम करने चाहिए:

# Make a garden based on the default 12-student roster.
Garden("VRCGVVRVCGGCCGVRGCVCGCGV\nVRCCCGCRRGVCGCRVVCVGCGCV") 

# Make a garden based on a 2-student roster.
Garden("VRCC\nVCGG", students=["Valorie", "Raven"]) 

एक तरीका यह है कि छात्रों की list को डिफाल्ट आर्गुमेंट बना दिया जाए; Python के डॉक्स फंक्शन की परिभाषा समझाते हुए default parameters के बारे में विस्तार से बताते हैं।

GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Python Exercism

किंडरगार्टन बगीचा शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और Python को 17 कॉन्सेप्ट146 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।