تابعی بنویسید که نتیجه عملیات ریاضی روی یک کارت آموزشی را محاسبه کند. هر کارت آموزشی یک لیست سهعنصری شامل [عدد اول، عملگر، عدد دوم] است. تابع باید نتیجه ریاضی این عبارت را برگرداند.
عملگرهای مجاز:
+
(جمع)-
(تفریق)x
(ضرب)/
(تقسیم)
شرایط خاص:
- اگر تقسیم بر صفر اتفاق بیفتد (مثلاً [3, “/”, 0])، تابع باید
None
برگرداند. - برای عملیات تقسیم، نتیجه باید تا دو رقم اعشار گرد شود. مثلاً [10, “/”, 3] باید 3.33 برگرداند.
نمونه ورودی و خروجی
Flash([3, "x", 7]) ➞ 21
Flash([5, "+", 7]) ➞ 12
Flash([10, "-", 9]) ➞ 1
نکات مهم
- اعداد در کارتهای آموزشی فقط میتوانند صفر یا اعداد مثبت باشند.
Assert.Equal(21, Backendbaz.Flash(new object[] { 3, "x", 7 })); Assert.Equal(12, Backendbaz.Flash(new object[] { 5, "+", 7 })); Assert.Equal(1, Backendbaz.Flash(new object[] { 10, "-", 9 })); Assert.Null(Backendbaz.Flash(new object[] { 10, "/", 0 })); Assert.Equal(3.33, Backendbaz.Flash(new object[] { 10, "/", 3 }));
نظرات