Консольный калькулятор в одну строку (парсинг выражения) - C#
Формулировка задачи:
Товарищи программисты, помогите реализовать задачу. Вводится в консоли арифметическое выражение в виде: Все данные вводятся в одну строку и после = выдача результата или после нажатия ентера после равно без разницы, главное чтобы выражение в одну строку было. В несколько строк легко в одну ума не приложу как написать.(( типа мини калькулятор.
A*B=
Вывести его значение.
Начальные данные: арифметическое выражение с символами математических операций.
Вывод результата: одно целое число - решение арифметического выражения.
Ах, да, и еще нельзя юзать циклы и все такое. switch тоже нельзя
Решение задачи: «Консольный калькулятор в одну строку (парсинг выражения)»
textual
Листинг программы
var funcs = new Dictionary<char, Func<double, double, double>>
{
{'+', (a, b) => a + b},
{'-', (a, b) => a - b},
{'*', (a, b) => a*b},
{'/', (a, b) => a/b}
};
var input = Console.ReadLine().Replace("=", "");
var nums = input.Split(funcs.Keys.ToArray())
.Select(double.Parse)
.ToArray();
char @operator = funcs.Keys.First(input.Contains);
var result = funcs[@operator](nums[0], nums[1]);
Console.WriteLine(result);
Console.ReadKey();