एक साधारण पूर्णांक ऑपरेशन स्क्रिप्ट योग्य कैलकुलेटर को लागू करें।
संकल्पना
संचायक 0 से शुरू होता है और इस पर ऑपरेशन होता है। प्रोग्राम आउटपुट के अंत में संचायक का मान।
संचालन:
+
1
संचायक को जोड़ता है-
1
संचायक से घटाता है*
संचायक को गुणा करता है2
/
द्वारा संचायक को विभाजित करता है2
नमूना लिपि
इनपुट ++**--/
आउटपुट देना चाहिए 3
।
उदाहरण कार्यान्वयन
def calc(s)
i = 0
s.chars.each do |o|
case o
when '+'
i += 1
when '-'
i -= 1
when '*'
i *= 2
when '/'
i /= 2
end
end
return i
end
नियम
- यह कोड-गोल्फ है , इसलिए बाइट्स जीत में सबसे कम उत्तर है, लेकिन चयनित नहीं है।
- रचनात्मक कार्यान्वयन को प्रोत्साहित किया जाता है।
- मानक कमियां निषिद्ध हैं।
- आप स्टड या तर्कों के माध्यम से कार्यक्रम प्राप्त करते हैं, और आप रिटर्न वैल्यू या स्टडआउट के माध्यम से उत्तर का उत्पादन कर सकते हैं।
- मज़े करो।
- विभाजन कम हो जाता है क्योंकि यह पूर्णांक विभाजन है।
- कार्यक्रम
-/
लौटता है-1
।
परीक्षण के मामलों
*///*-*+-+
-1
/*+/*+++/*///*/+-+//*+-+-/----*-*-+++*+**+/*--///+*-/+//*//-+++--++/-**--/+--/*-/+*//*+-*-*/*+*+/+*-
-17
+++-+--/-*/---++/-+*-//+/++-*--+*+/*/*/++--++-+//++--*/***-*+++--+-*//-*/+*/+-*++**+--*/*//-*--**-/-*+**-/*-**/*+*-*/--+/+/+//-+*/---///+**////-*//+-+-/+--/**///*+//+++/+*++**++//**+**+-*/+/*/*++-/+**+--+*++++/-*-/*+--/++*/-++/-**++++/-/+/--*/-/+---**//*///-//*+-*----+//--/-/+*/-+++-+*-*+*+-/-//*-//+/*-+//+/+/*-/-/+//+**/-****/-**-//+/+-+/*-+*++*/-/++*/-//*--+*--/-+-+/+/**/-***+/-/++-++*+*-+*+*-+-//+/-++*+/*//*-+/+*/-+/-/*/-/-+*+**/*//*+/+---+*+++*+/+-**/-+-/+*---/-*+/-++*//*/-+-*+--**/-////*/--/*--//-**/*++*+/*+/-+/--**/*-+*+/+-*+*+--*///+-++/+//+*/-+/**--//*/+++/*+*////+-*-//--*+/*/-+**/*//+*+-//+--+*-+/-**-*/+//*+---*+//*/+**/*--/--+/*-*+*++--*+//+*+-++--+-*-*-+--**+/+*-/+*+-/---+-*+-+-/++/+*///*/*-+-*//-+-++/++/*/-++/**--+-////-//+/*//+**/*+-+/+/+///*+*///*-/+/*/-//-*-**//-/-+--+/-*--+-++**++//*--/*++--*-/-///-+/+//--+*//-**-/*-*/+*/-*-*//--++*//-*/++//+/-++-+-*/*-+++**-/-*++++**+-+++-+-***-+//+-/**-+/*+****-*+++*/-*-/***/-/*+/*****++*+/-/-**-+-*-*-++**/*+-/*-+*++-/+/-++*-/*-****-*
18773342
-/
लौटना चाहिए ?
/
गैर-पूर्णांक प्राप्त कर सकते हैं।