मैं आपको एक परीक्षण के लिए प्रस्तुत करता हूं! आपकी परीक्षा की परीक्षा है। टेस्ट को टेस्टी के साथ टेस्टी को टेस्ट करना होता है, एक परीक्षक आपको कोड के शोर टेस्ट राशि में देता है । विशेष रूप से, आप एक बहु विकल्प परीक्षण देंगे जिसे आपने इनपुट के रूप में प्राप्त किया है।
इस चुनौती में, आपको इस तरह से एक इनपुट लेना होगा:
1. Our site is called Programming Puzzles & Code ________.
A: Debugging
*B: Golf
C: Hockey
D: Programming
2. What is the *most* popular tag on our site?
A: [debug]
B: [program]
*C: [code-golf]
D: [number]
E: [c++]
3. We are part of the ________ Exchange network.
*A: Stack
B: Code
C: Programmer
D: Hockey
4. Is this the first question?
A: Yes
*B: No
5. Is this the last question?
*A: Yes
B: No
और यहाँ परीक्षण का एक उदाहरण लिया जा रहा है:
1. Our site is called Programming Puzzles & Code ________.
A: Debugging
B: Golf
C: Hockey
D: Programming
answer: B
correct!
2. What is the *most* popular tag on our site?
A: [debug]
B: [program]
C: [code-golf]
D: [number]
E: [c++]
answer: C
correct!
3. We are part of the ________ Exchange network.
A: Stack
B: Code
C: Programmer
D: Hockey
answer: B
incorrect! the answer was A
4. Is this the first question?
A: Yes
B: No
answer: B
correct!
5. Is this the last question?
A: Yes
B: No
answer: B
incorrect! the answer was A
overview:
3 correct, 2 incorrect (60%)
3. We are part of the ________ Exchange network.
you chose B: Code
the answer was A: Stack
5. Is this the last question?
you chose B: No
the answer was A: Yes
औपचारिक विनिर्देश:
- इनपुट
- यदि एक रेखा एक बिंदु और एक स्थान के बाद एक संख्या से शुरू होती है, तो यह उस संख्या के साथ एक प्रश्न है। नंबर हमेशा 1 से शुरू होंगे और प्रत्येक प्रश्न 1 से ऊपर जाएंगे।
- यदि एक पंक्ति एक वैकल्पिक तारांकन, एक पत्र, एक बृहदान्त्र और फिर एक स्थान से शुरू होती है, तो यह एक उत्तर है। उत्तर भी हमेशा अनुक्रमिक होंगे। प्रति प्रश्न केवल एक सही उत्तर होगा।
- पहले बताए गए तरीकों की तुलना में किसी भी अन्य तरीके से एक लाइन शुरू नहीं होगी।
- इनपुट को किसी भी तरह से स्वीकार किया जा सकता है (फ़ाइल, स्टडिन आदि से पढ़ना), लेकिन आपके प्रोग्राम में हार्डकोड नहीं होना चाहिए।
- आउटपुट (परीक्षण लेने का चरण)
- सबसे पहले, प्रत्येक प्रश्न को क्रमिक रूप से प्रिंट करें। इनपुट में प्राप्त प्रश्न और उसके उत्तरों को प्रिंट करें, लेकिन सही उत्तरों को इंगित करने वाले तारांकन चिह्न को प्रिंट न करें।
- फिर, एक नई रूपरेखा प्रिंट करें और
"answer: "। उपयोगकर्ता इनपुट के लिए प्रतीक्षा करें। उपयोगकर्ता इनपुट हमेशा एक उत्तर के अनुरूप होगा। - यदि सही उत्तर (एक तारांकन वाला) उपयोगकर्ता इनपुट, आउटपुट के समान है
"correct!"। अन्यथा, आउटपुट"incorrect! the answer was " + correct_letter। - प्रत्येक प्रश्न को एक रिक्त रेखा के साथ अलग करें, फिर पिछले आउटपुट चरणों को दोहराएं जब तक कि अधिक प्रश्न न हों।
- आउटपुट (अवलोकन चरण)
- प्रिंट करें
"overview: "और फिर एक नई रूपरेखा। - प्रिंट
"{number of correct answers} correct, {incorrect answers} incorrect ({percent correct, rounded to the nearest whole number}%)"(बेशक अपने संबंधित मूल्यों के साथ घुंघराले ब्रेसिज़ में वाक्यांशों को प्रतिस्थापित करना)। फिर रिक्ति के लिए एक रिक्त रेखा प्रिंट करें। - अब, प्रत्येक प्रश्न के लिए जो गलत था, प्रश्न को प्रिंट करें (इसके उत्तर नहीं), फिर एक नई लाइन पर
"you chose " + answer_you_chose, और दूसरी लाइन पर"the answer was " + correct_answer। प्रत्येक गलत उत्तर के अवलोकन को एक रिक्त रेखा के साथ अलग करें।
- प्रिंट करें
- चीजों को शाब्दिक रूप से व्याख्या करके धोखा देने को कम करने के लिए, जब यहां एक ही आउटपुट दिया जाता है, और परीक्षण-चरण में एक ही इनपुट दिया जाता है, तो आपके कार्यक्रम को नमूना आउटपुट के समान बिल्कुल आउटपुट होना चाहिए।
यह कोड-गोल्फ है ; सबसे छोटा कोड जीत! (और A + (हरा चेकमार्क) प्राप्त करता है!)

\d\.,\w:और\*प्रश्न / उत्तर के बीच में। (उदाहरण के लिए वर्तमान में , के*साथ समाप्त किया जा सकता हैy/*//, जबकि सही तरीका के रूप में लंबा हैs/^\*//।)