ম্যালবলেজ প্রোগ্রামিং ভাষার অনেকগুলি অনন্য বৈশিষ্ট্যগুলির মধ্যে একটি হ'ল এটির অত্যন্ত অনিচ্ছুক OP
অপারেটর, যা কেবলমাত্র ডকুমেন্টেশন এবং উত্স কোডে "অপ" হিসাবে পরিচিত তবে "পাগল" অপারেটর হিসাবে জনপ্রিয় হিসাবে পরিচিত। ভাষার স্রষ্টা বেন ওলমস্টেড তার ডকুমেন্টেশনে যেমন বর্ণনা করেছেন: " প্যাটার্নটির দিকে তাকান না, এটি সেখানে নেই ।"
অপ একটি "ট্রাইটিওয়াইজ" অপারেটর - এটি তার দুটি আর্গুমেন্টের সাথে সম্পর্কিত ত্রৈমাসিকের অঙ্কগুলিতে কাজ করে। প্রতিটি ট্রিটের জন্য (ত্রৈমাসিক বিট), অপের ফলাফলটি নিম্নলিখিত দেখার সারণিতে দেওয়া হয়:
a
op(a,b) 0 1 2
+-------
0 | 1 0 0
b 1 | 1 0 2
2 | 2 2 1
উদাহরণস্বরূপ, গণনা করার জন্য op(12345, 54321)
, প্রথমে তিনটি সংখ্যা লিখুন এবং তারপরে টেবিলে প্রতিটি জোড় লিখে দেখুন:
0121221020 (12345_3)
op 2202111220 (54321_3)
--------------
2202220211 (54616_3)
গত গুরুত্বপূর্ণ পয়েন্ট যে Malbolge সমস্ত মান তাই ইনপুট মান 10 একটি প্রস্থের সাথে শূণ্যসমূহ সঙ্গে padded হবে 10 trits চওড়া, হয় (উদাহরণস্বরূপ, op(0, 0)
হয় 1111111111
তিন মধ্যে।)
আপনার কাজটি হ'ল দুটি পূর্ণসংখ্যা 0 gers a
, b
<59049 ইনপুট হিসাবে নেওয়া এবং এর পূর্ণসংখ্যা মান আউটপুট করা op(a,b)
।
পরীক্ষার কেস (বিন্যাসে a b op(a,b)
):
0 0 29524
1 2 29525
59048 5 7
36905 2214 0
11355 1131 20650
12345 54321 54616
এখানে একটি রেফারেন্স বাস্তবায়ন (সরাসরি মালবালজ উত্স কোড থেকে অনুলিপি করা হয়েছে)।
54616_3
অর্থ এই নয় যে "এই অন্য জিনিসটি হ'ল দশমিক সংখ্যা 54616, তবে এটি বেস তিন হিসাবে উপস্থাপিত"। এর অর্থ " 54616
বেস 3 হিসাবে পড়ুন "। যা অবশ্যই, আপনি করতে পারবেন না (এমন কোনও সংখ্যা রয়েছে যা ভালভ সেখানে গণনা করতে পারে না)। আপনি _3
পুরোপুরি এবং আরও সঠিকভাবে পরিত্রাণ পেয়েছেন তবে এটি সম্ভবত এখনও ঠিক পরিষ্কার হবে ।