এমন একটি প্রোগ্রাম তৈরি করুন যা অভিব্যক্তির বিকল্প দিকগুলির উপাদানগুলি ব্যবহার করে একটি গাণিতিক অভিব্যক্তি সমাধান করে। এটি যেভাবে সম্পন্ন হয়েছে তা হ'ল, বাম থেকে ডানে পড়ার পরিবর্তে আপনি প্রথম অক্ষরটি পড়বেন, তারপরে শেষটি, দ্বিতীয়টি, তারপরে দ্বিতীয় থেকে শেষ ইত্যাদি This এটি আপনাকে একটি নতুন এক্সপ্রেশন দেবে যা আপনাকে মূল্যায়ন করতে হবে এবং আউটপুট দিতে হবে।
a*b/c+d-e
135798642 <-- Order you read the expression in
ae*-bd/+c <-- Order of operation.
উদাহরণ:
1*3/2+4-5
15*-34/+2 = -255
যদি অভিব্যক্তিটি «কাজ করে না», 1এটি কাজ করার জন্য একটি অবশ্যই প্রয়োজনীয় অবস্থানে .োকাতে হবে।
কয়েকটি উদাহরণ সম্ভবত এটি আরও ভাল চিত্রিত করবে:
Input: 1+1+1+1+1
Result: 23 // Because 1+1+1+1+1 -> 11++11++1 -> 23
Input: 1+2-3+12-5
Result: -19 // Because 1+2-3+12-5 -> 15+-22-13+ -> 15+-22-13+1 -> -19
// |
// Not valid expression
Input: 2*2*2*2*2
Result: 968 // Because 2*2*2*2*2 -> 22**22**2 -> 22*1*22*1*2 -> 968
// || ||
// Not valid, 1 must be inserted
Input: 17/2
Output: 127 // Because 17/2 = 127/ -> 127/1 -> 127
অপারেটররা অবশ্যই সমর্থিত হবে + - * /। বন্ধনী থাকবে না। সাধারণ গণিতের নিয়মাবলী এবং "সিনট্যাক্স" ব্যবহৃত হয়, সুতরাং উদাহরণস্বরূপ **ক্ষয়ক্ষতির অর্থ নয়। a++++1সমতুল্য a+1(যেমন ম্যাটল্যাব স্টাইল, সি ++ নয়)।
যদি সন্দেহ থাকে তবে কিছু বৈধ ক্রিয়াকলাপগুলি হ'ল:
-a
+a
a++b
a+-b
a*-b
a*+b
a*++b
a/b
a/-b
a/+b
-a/--b
যদিও নিম্নলিখিতগুলির সমস্তটি বৈধ নয়। এগুলির সাথে কী প্রতিস্থাপন করা উচিত তা দেখানো হয়েছে:
a+ | a+1
a- | a-1
a++++ | a++++1 (This is equivalent to a+1)
a*+++ | a*+++1 (This is equivalent to a*1)
a**b | a*1*b
a*/b | a*1/b
a/*b | a/1*b
a* | a*1
*a | 1*a
***a | 1*1*1*a
নিয়মাবলী:
- কোডটি কোনও ফাংশন বা একটি সম্পূর্ণ প্রোগ্রাম হতে পারে
- ইনপুটটি STDIN বা ফাংশন যুক্তি হতে পারে
- ইনপুট অবশ্যই একটি বৈধ গাণিতিক এক্সপ্রেশন হতে হবে, উদ্ধৃতি চিহ্ন ছাড়াই
''বা""। - একটি পূর্ণসংখ্যা, দশমিক বা সরলিকৃত ভগ্নাংশ হিসাবে আউটপুটটি নতুন এক্সপ্রেশনটির উত্তর হওয়া উচিত।
- দশমিক পয়েন্টের পরে কমপক্ষে তিনটি অঙ্ক সমর্থন করা আবশ্যক। সুতরাং
1/3 = 0.333, না0.33।0.333333333গৃহীত হয় ans = ...গৃহীত হয়- শীর্ষস্থানীয় এবং অনুসরণযোগ্য নিউলাইন এবং স্থানগুলি স্বীকৃত।
- ইনপুটটি কেবল পূর্ণসংখ্যা হবে
- শূন্য দ্বারা বিভাজনের ফলে ত্রুটি, নাএন, ইনফ ইত্যাদি হতে পারে a
সর্বদা হিসাবে, সংক্ষিপ্ত কোড বাইট জিতে। যেদিন চ্যালেঞ্জ পোস্ট হয়েছিল সেদিন থেকে একজন বিজয়ী নির্বাচন করা হবে। পরে পোস্ট করা উত্তরগুলি যদি বর্তমান নেতার চেয়ে কম হয় তবে জিততে পারে।
0/0অভিব্যক্তিটি শূন্য দ্বারা পূর্ণসংখ্যা বিভাজন বা মডুলোতে প্রদর্শিত হলে আমি কেবল ফিরে আসতে পারি ?
x/0এটি একটি বৈধ আউটপুট। যতক্ষণ না এটি কোনও ভুল উত্তর আউটপুট দেয় না ঠিক আছে। ত্রুটি এবং "একটি সংখ্যা নয়" সংজ্ঞা দ্বারা সঠিক, এবং অনন্ত "যথেষ্ট সঠিক",
2^64, এবং যদি আপনি উপরে যান তবে এটির ত্রুটি বা মোড়ক থাকা উচিত?