Простой консольный калькулятор - C#
Формулировка задачи:
Задание такое:
Реализовать усовершенствованный консольный арифметический калькулятор. С консоля ввести всё выражение, например, 15+63, результат вывести на консоль. При выборе операции использовать оператор switch. Выполнить разбор выражения, проверку допустимости входных данных. Обработку ошибок выполнить з использованием блока try...catch. Завершение работы программы сделать за запросом "Для заверешения работы введите exit" через цикл do... while .
На форуме уже нашёл похожий калькулятор. Вот ссылка, автор его Delog. Но он слишком сложный, мне попроще нада + использовать оператор switch, а также там нету блока try...catch, нужен подсчёт только простых выражений, а там ещё реализовано со скобками.
В интеренете нашёл ещё один пример, но он также неподходит по некоторым причинам.
Помогите пожалуйста с реализацей задачки.
Решение задачи: «Простой консольный калькулятор»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace kalc for_cyberforum { class Program { static void Main(string[] args) { bool quit = false; bool flag = false; float first = 0; float second = 0; char operation = '\0'; Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine(); Console.WriteLine(" + : сложение чисел"); Console.WriteLine(" - : вычетание чисел"); Console.WriteLine(" * : умножение чисел"); Console.WriteLine(" / : деление чисел"); Console.WriteLine(" q : ВЫХОД из программы "); Console.WriteLine(); Console.ForegroundColor = ConsoleColor.Green; do { try { Console.Write("Введите первое число: "); first = float.Parse(Console.ReadLine()); Console.Write("Введите второе число: "); second = float.Parse(Console.ReadLine()); Console.Write("Укажите операцию: "); operation = char.Parse(Console.ReadLine()); } catch { flag = true; Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\aВНИМАТЕЛЬНО ЧИТАЙТЕ ИНСТРУКЦИЮ!!!"); Console.ForegroundColor = ConsoleColor.Green; } if(!flag) { switch (operation) { case '+': Console.WriteLine("Сумма чисел составляет: " + (first + second));break; case '-': Console.WriteLine("Разность чисел состовляет: " +(first - second));break; case '*': Console.WriteLine("Произведение чисел составляет: " + (first * second));break; case '/': Console.WriteLine("Отношение чисел составляет: " + (first / second));break; case 'q': quit = true; break; default: { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("\aВНИМАТЕЛЬНО ЧИТАЙТЕ ИНСТРУКЦИЮ!!!"); Console.ForegroundColor = ConsoleColor.Green; } break; } } flag = false; } while(!quit); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д