एक प्रोग्राम लिखें जो इसके इनपुट के रूप में दो नंबर लेता है। पहला एक आयामों की संख्या है - एक बिंदु के लिए 0, एक सीधी रेखा के लिए 1, एक वृत्त के लिए 2, एक गोले के लिए 3। दूसरी संख्या वस्तु की त्रिज्या है, या, यदि यह 1-आयामी है, तो संख्या ही। आउटपुट 0 आयामों के लिए। आउटपुट वस्तु की लंबाई / क्षेत्रफल / आयतन है।
यदि हम पहले नंबर n, दूसरे नंबर rऔर आउटपुट को कॉल करते हैं x, तो हमें वह मिलता है:
n = 0, x = 1 के लिए
n = 1, x = 2 × r के लिए
n = 2, x = r 2 × x के लिए
n = 3 के लिए, एक्स = ( 4 / 3 ) × आर 3 × π
और इतने पर ... यदि आप चाहते हैं, हालांकि।
टिप्पणियाँ:
मामले जब एक या दोनों संख्याएँ नकारात्मक होती हैं, या जब पहली संख्या पूरी नहीं होती है, तो उन्हें कवर करने की आवश्यकता नहीं होती है।
कार्यक्रम को किसी भी फ़ाइल से नहीं पढ़ा जाना चाहिए और एकमात्र इनपुट वे दो नंबर हैं।
आउटपुट में केवल अंकों (जैसे "14 * पीआई") का उपयोग नहीं किया जाना चाहिए, और कम से कम दो दशमलव अंकों के लिए सटीक होना चाहिए।
N = 0 के लिए, आप 0 को आउटपुट कर सकते हैं यदि यह कोड को छोटा बनाता है।
4 और अधिक-आयामी "क्षेत्रों" को कवर करने वाले उत्तर के लिए अतिरिक्त स्वैग!
यह कोड-गोल्फ है , इसलिए बाइट्स जीत में सबसे छोटा जवाब है!
उदाहरण:
1 1 -> 2
2 3 -> 28,27
3 1 -> 4,19
3 4,5 -> 381,70
1 9.379 -> 18.758
0 48 -> 1
== rगोला है, मूल से दूरी के साथ बिंदुओं का सेट <= rगेंद है। फिर ये हैं 0-बॉल = पॉइंट, 1-बॉल = सेगमेंट, 2-बॉल = डिस्क, 3-बॉल = बॉल, 4-बॉल, 5-बॉल, एट सी। (" n-बॉल = सामान्य नाम" के रूप में सूचीबद्ध )।