आधार 10 और आधार 2 दोनों में साधारण अंकगणित (जोड़, घटाव, गुणा और भाग) कर सकते हैं, से एक फ़ंक्शन या प्रोग्राम लिखें।
फ़ंक्शन इनपुट के रूप में गणितीय अभिव्यक्ति लेगा, और सही आधार में सही परिणाम का उत्पादन करेगा। इनपुट n
एक या कई ऑपरेटरों द्वारा अलग किए गए नंबर होंगे ( + - * /
)।
यदि सभी इनपुट मानों में केवल 0 और 1 होते हैं, तो सभी मानों को बाइनरी माना जाता है। यदि कम से कम एक अंक है 2-9
, तो सभी मानों को आधार 10 माना जाता है।
नियम:
- आप मान सकते हैं कि संख्याओं के बीच केवल एक ऑपरेटर
10*-1
होगा ( दिखाई नहीं देगा) - आप मान सकते हैं कि कोई कोष्ठक नहीं होगा।
- सामान्य ऑपरेटर पूर्वता (यदि आप संदेह में हैं तो Google कैलकुलेटर में अभिव्यक्ति का प्रयास करें)।
- आप यह नहीं मान सकते कि केवल पूर्णांक होंगे
- इनपुट या आउटपुट में कोई अग्रणी शून्य नहीं होगा
- आप मान सकते हैं कि केवल वैध इनपुट दिया जाएगा
- आप मान सकते हैं कि सभी इनपुट वैल्यू पॉजिटिव हैं (लेकिन माइनस ऑपरेटर नकारात्मक आउटपुट को संभव बना सकता है,
1-2=-1
और10-100=-10
) - REPL स्वीकार नहीं किया जाता है
- आप इनपुट लेने के लिए अलग तर्क के रूप में, या एक ही तर्क के रूप में चुन सकते हैं, लेकिन इनपुट है सही क्रम में किया जाना है।
- यानी आप का प्रतिनिधित्व कर सकते
1-2
इनपुट तर्क के साथ1
,-
,2
, लेकिन नहीं1
,2
,-
।
- यानी आप का प्रतिनिधित्व कर सकते
- आपको
+ - * /
इनपुट आदि में प्रतीकों को स्वीकार करना चाहिएplus
,minus
आदि। - आपको फ़्लोटिंग पॉइंट वैल्यू (या अपनी भाषा की अधिकतम सीमा तक) का समर्थन करना चाहिए, हालाँकि केवल पूर्णांकों का समर्थन स्वीकार नहीं किया जाता है।
eval
स्वीकार कर लिया है
उदाहरण:
1+1
10
1010+10-1
1011
102+10-1
111
1+2+3
6
10*10*10
1000
11*11*11
11011
10*11*12+1
1321
10.1*10.1
110.01
20.2*20.2
408.04
10/5
2
110/10
11
Also accepted (optional line or comma-separated input):
10
+
10
-
1
11 <-- This is the output
यह कोड गोल्फ है, इसलिए बाइट्स में सबसे छोटा कोड जीत जाएगा।
110/10
, है11.0
स्वीकार्य?