एक संख्या n दी गई है; पता कीजिए कि n वीं अभाज्य संख्या कौन-सी है।
पहली छह अभाज्य संख्याएँ लिखिए: 2, 3, 5, 7, 11 और 13। इनसे पता चलता है कि छठी अभाज्य संख्या 13 है।
अगर आपकी भाषा की स्टैंडर्ड लाइब्रेरी में अभाज्य संख्याओं से जुड़े मेथड मौजूद हैं, तो मान लीजिए कि वे नहीं हैं, और उन्हें खुद बनाइए।
कभी-कभी एक्सेप्शन उठाना ज़रूरी हो जाता है। ऐसा करते समय आपको हमेशा एक अर्थपूर्ण एरर संदेश शामिल करना चाहिए, जिससे पता चले कि एरर का स्रोत क्या है। इससे आपका कोड पढ़ने में आसान हो जाता है और डीबग करने में काफी मदद मिलती है। जिन स्थितियों में आपको पता है कि एरर का स्रोत किसी खास प्रकार का होगा, वहाँ आप बिल्ट-इन एरर प्रकारों में से कोई एक उठाना चुन सकते हैं, लेकिन तब भी एक अर्थपूर्ण संदेश शामिल करना चाहिए।
इस अभ्यास में आपको raise स्टेटमेंट का उपयोग करके एक ValueError "फेंकना" है, जब prime() फंक्शन को गलत इनपुट मिले। चूँकि यह अभ्यास केवल धनात्मक संख्याओं पर काम करता है, इसलिए 1 से छोटी हर संख्या गलत मानी जाती है। टेस्ट तभी पास होंगे जब आप exception को raise करेंगे और उसके साथ एक संदेश भी देंगे।
संदेश के साथ ValueError उठाने के लिए, संदेश को exception प्रकार के आर्गुमेंट के रूप में लिखिए:
# when the prime function receives malformed input
raise ValueError('there is no zeroth prime')
Exercism पर साइन अप कीजिए और Python को 17 कॉन्सेप्ट146 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।