पहचान
यह एक वास्तविक समस्या पर आधारित है जिसे मैंने हाल ही में कंप्यूटर गेम बनाते समय सामना किया था और मुझे लगा कि यह कोड-गोल्फ के एक अच्छे दौर के लिए बनेगा ।
स्टार के सात मुख्य वर्णक्रमीय वर्ग हैं जो अलग-अलग मात्रा में गर्मी डालते हैं। किसी तारे के चारों ओर के ग्रहों का भूगर्भ तारा से प्राप्त ऊष्मा की मात्रा से बहुत प्रभावित होता है, जो वर्णक्रमीय वर्ग और तारे से दूरी का कारक है। इसलिए बुध व्यावहारिक रूप से पिघला हुआ है, नेप्च्यून जमे हुए हैं।
मेरे खेल में आकाशगंगा प्रक्रियात्मक रूप से उत्पन्न हुई है और दिए गए तारों के लिए ग्रह प्रकारों का चयन करने के लिए बेतरतीब ढंग से चयन किया गया है जो कि 'स्टेटमेंट नर्क' है!
चुनौती
आपकी विधि को न्यूनतम ताप सीमा, अधिकतम ताप सीमा और एक यादृच्छिक संख्या के आधार पर, ग्रह के प्रकार के लिए उपयुक्त ग्रह प्रकारों की सूची में से एक ग्रह का चयन करना चाहिए। सादगी के लिए यह चुनौती केवल हमारे सूरज की तरह एक वर्ग जी स्टार का उपयोग करेगी।
इनपुट
heat
स्टार से ग्रह द्वारा प्राप्त गर्मी की मात्रा का प्रतिनिधित्व करते हुए रेंज 4 से 11 में एक पूर्णांक ।
चर
यह तालिका संभावित ग्रहों को दर्शाती है heat
। आपकी विधि को पहले गर्मी मिनट और गर्मी अधिकतम के आधार पर उपलब्ध विकल्पों को संकीर्ण heat
करना चाहिए , दोनों के बीच या पर गिरना चाहिए। उदाहरण के लिए 10 की गर्मी के साथ एकमात्र विकल्प डेजर्ट, आयरन और लावा होगा।
Planet type Heat min Heat max Random Chance
Gas Giant 4 9 15
Ice 4 6 10
Ice Giant 4 6 10
Gaia class 5 7 10
Dense Atmosphere 7 9 10
Desert 7 10 25
Iron 7 10 14
Lava 10 11 6
इसके बाद, किसी ग्रह की संभावना (शेष विकल्पों में) को चुना जाना उसकी यादृच्छिक संभावना है जो सभी विकल्पों के यादृच्छिक अवसरों के योग से विभाजित होता है।
उपरोक्त उदाहरण में, आयरन के चुने जाने की संभावना है 14/(25+14+6)
।
उत्पादन
ग्रह प्रकार को एक स्ट्रिंग के रूप में लौटाएं।
तर्क तीर-कमान से बचने के लिए सबसे अच्छा है। सबसे छोटा कोड जीतता है, रचनात्मकता के लिए सभी दौर को इंगित करता है। हैप्पी गोल्फिंग!