Консольный мини-калькулятор с паролем - C#
Формулировка задачи:
Создайте консольное приложение. В начале работы производите запрос пароля, если пароль неверный проведите генерацию исключения. Далее в этой программе создайте мини калькулятор, который выполняет следующие операции: умножение, деление, возведение в степень, нахождение корня. (Все ошибки, которые могут возникнуть при выполнении программы, необходимо предусмотреть и исключить). на си шарпе. помогите пожалуйста
Решение задачи: «Консольный мини-калькулятор с паролем»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ProjectCsh { class Program { static void Main(string[] args) { string password = "12"; // здесь вводите пароль, по которому будет осуществляться вход Console.WriteLine("Input the password :"); M: if (Console.ReadLine() == password) // Проверяем вводимый нами пароль, если совпадает, то пишем ОК, и пускаем с программу { Console.Clear(); Console.WriteLine("OK!"); Console.ReadKey(); Console.Clear(); menu(); } else { Console.Clear(); Console.WriteLine("Incorrect!...Try again : "); goto M; // Если нет - попробуйте ещё раз, господа } } static void menu() // Сама "Менюшка" приложения, ниже то что выведет на экран { Console.Clear(); Console.WriteLine("Division - press 1"); Console.WriteLine("Multiplication - press 2"); Console.WriteLine("Involution - press 3"); Console.WriteLine("Radical - press 4"); Console.WriteLine("For exit press 0"); Console.WriteLine("Input: "); int choose = 0; try // Здесь читаем с консоли целое число, если же ввели не число ... { choose = Convert.ToInt32(Console.ReadLine()); } catch // Говорим об этом здесь, пусть пробуют ещё раз { Console.Clear(); Console.WriteLine("It is not number! Try again..."); Console.ReadKey(); Console.Clear(); menu(); } switch (choose) // Условный оператор, который и помогает определить, что же выбрал пользователь { case 1: Division(); break; case 2: Multiplication(); break; case 3: Involution(); break; case 4: Radical(); break; case 0: return; default: // Если введено число, которого нет в меню, пишем мол ошибка, пробуйте снова Console.Clear(); Console.WriteLine("Error! Try again..."); Console.ReadKey(); Console.Clear(); menu(); break; } } static void Division() // Функция "Деление" { Console.Clear(); Console.WriteLine("Please, input 2 numbers :"); double first = 0; double second = 0; try // Считываем 2 числа { Console.WriteLine("First : "); first = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Second : "); second = Convert.ToDouble(Console.ReadLine()); } catch // Опять же, если это не числа, пытаемся опять, может кто-то упал лицом на клавиатуру?:?:? { Console.Clear(); Console.WriteLine("It is not number! Try again..."); Console.ReadKey(); Console.Clear(); Division(); } try // Выводим результат на экран { Console.Clear(); Console.WriteLine($"{first} / {second} = {first/second}"); Console.ReadKey(); menu(); } catch { Console.WriteLine("Invalid division on zero"); // Если делимся на ноль :) Console.ReadKey(); Console.Clear(); Division(); } } static void Multiplication() // Умножение естессно { Console.Clear(); Console.WriteLine("Please, input 2 numbers :"); double first = 0; double second = 0; try { Console.WriteLine("First : "); first = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Second : "); second = Convert.ToDouble(Console.ReadLine()); } catch { Console.Clear(); Console.WriteLine("It is not number! Try again..."); Console.ReadKey(); Console.Clear(); Multiplication(); } Console.Clear(); Console.WriteLine($"{first} * {second} = {first * second}"); Console.ReadKey(); menu(); } static void Involution() // Возведение в степень { Console.Clear(); Console.WriteLine("Please, input number and number of involution :"); double number = 0; // Число double result = 0; int INV = 0; // Степень try { Console.WriteLine("Number : "); number = Convert.ToDouble(Console.ReadLine()); result = number; Console.WriteLine("Involution : "); INV = Convert.ToInt32(Console.ReadLine()); } catch { Console.Clear(); Console.WriteLine("It is not number! Try again..."); Console.ReadKey(); Console.Clear(); Multiplication(); } for (int i = 0; i < INV; i++) // Функция возведения { result *= number; } Console.Clear(); Console.WriteLine($"{number} ^ {INV} = {result}"); Console.ReadKey(); menu(); } static void Radical() // Квадратный корень числа { Console.Clear(); Console.WriteLine("Please, input number :"); double number = 0; try { Console.WriteLine("Number : "); number = Convert.ToDouble(Console.ReadLine()); } catch { Console.Clear(); Console.WriteLine("It is not number! Try again..."); Console.ReadKey(); Console.Clear(); Radical(); } try { Console.WriteLine($"SQRT({number}) = {Math.Sqrt(number)}"); Console.ReadKey(); menu(); } catch (Exception ex) { Console.WriteLine(ex.ToString()); Console.ReadKey(); Console.Clear(); Radical(); } } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д