Возврат методом различных типов данных - C#
Формулировка задачи:
Здравствуйте,
ребята, как научить мой "калькулятор" понимать строку ввода типа "2+2" или к примеру "10/2" когда я ввожу в консоль, выдаётся ошибка. Код ниже:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _07Metods02 { class Program { static double Add(double a, double b) { return a + b; } static double Sub(double a, double b) { return a - b; } static double Mul(double a, double b) { return a * b; } static double Div(double a, double b) { return a / b; } static void Main(string[] args) { double a, b; char x; Console.WriteLine("Пожалуста введите 2 числа"); a = double.Parse(Console.ReadLine()); x = char.Parse(Console.ReadLine()); b = double.Parse(Console.ReadLine()); if (b == 0) { Console.WriteLine("Ошибка! На ноль делить нельзя!"); } switch (x) { case '+': Console.WriteLine("Сумма этих двух чисел {0:0.00}", Add(a, b)); break; case '-': Console.WriteLine("Разница этих двух чисел {0:0.00}", Sub(a, b)); break; case '*': Console.WriteLine("Произведение этих двух чисел {0:0.00}", Mul(a, b)); break; case '/': Console.WriteLine("Деление этих двух чисел {0:0.00}", Div(a, b)); break; } Console.ReadKey(); } } }
Решение задачи: «Возврат методом различных типов данных»
textual
Листинг программы
double a, b; char x = ' '; string str = Console.ReadLine(); foreach (var ch in str) { if (!Char.IsDigit(ch)) { x=ch; } } string[] digits = str.Split(new char[1]{x}, StringSplitOptions.RemoveEmptyEntries); a = Convert.ToInt32(digits[0]); b = Convert.ToInt32(digits[1]);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д