Как можно улучшить имеющийся консольный калькулятор - C#

Узнай цену своей работы

Формулировка задачи:

как можно улучшить ? что можно нового добавить? в целях изучение языка и как сделать, что когда считается корень, ввести нужно было одно значение,а не как сумма 2?
static void Main(string[] args)
        {
 
            Console.WriteLine("Калькулятор!\nВыберите одну из арифметических операций:");
            
            Console.WriteLine(@"
                                Сложение  -1
                                Вычитание -2
                                Умножение -3
                                Деление   -4
                                Корень    -5
                                Степень   -6");
            
            var a = Console.ReadLine();
            
            Console.Write("Введите первое значение: ");
            var b = double.Parse(Console.ReadLine());
 
            Console.Write("Введите второе значение: ");
            var c = double.Parse(Console.ReadLine());

            switch (a)
            {
                case "1":
                    Console.WriteLine("Результат = {0}", b + c);
                    break;
                case "2":
                    Console.WriteLine("Результат = {0}", b - c);
                    break;
                case "3":
                    Console.WriteLine("Результат = {0}", b * c);
                    break;
                case "4":
                    Console.WriteLine("Результат = {0}", b / c);
                    break;
                case "5":
                    Console.WriteLine("Результат = {0}", Math.Sqrt(b+c));
                    break;
                case "6":
                    Console.WriteLine("Результат = {0}", Math.Pow(b,c));
                break;
                
            }
            
        }

Решение задачи: «Как можно улучшить имеющийся консольный калькулятор»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleCalc1
{
    class Calc
    {
        static void Main(string[] args)
        {
            while (true)
            {
                double a, b;
                Console.WriteLine("Введите первое значение");
                if (!double.TryParse(Console.ReadLine(), out a)) {
                    continue;
                }
                string q;
                do
                {
                    Console.WriteLine("\nВыберите арифметическое действие:\n" +
                    "- Умножение (введите *)\n" +
                    "- Деление (введите /)\n" +
                    "- Сложение (введите +)\n" +
                    "- Вычитание (введите -)\n" +
                    "- Возвести в степень (введите ^)\n" +
                    "- Корень степени (введите !)");
                    q = Console.ReadLine();
                } while (!ValidateOperationSign(q));
                Console.WriteLine("\nВведите второе значение");
                if (!double.TryParse(Console.ReadLine(), out b))
                {
                    continue;
                }
                if (q == "*")
                {
                    Console.WriteLine("\nРезультат умножения = {0}", a * b);
                }
                else if (q == "/")
                {
                    Console.WriteLine("\nРезультат деления = {0}", a / b);
                }
                else if (q == "+")
                {
                    Console.WriteLine("\nРезультат сложения = {0}", a + b);
                }
                else if (q == "-")
                {
                    Console.WriteLine("\nРезультат вычитания = {0}", a - b);
                }
                else if (q == "^")
                {
                    Console.WriteLine("\nВозведение в степень = {0}", Math.Pow(a, b));
                }
                else if (q == "!")
                {
                    Console.WriteLine("\nКорень степени = {0}", Math.Pow(a, 1 / b));
                }
                Console.WriteLine("\nВыйти Q\nДля продолжения нажмите Enter");
                string z = Console.ReadLine();
                if (z == "Q" || z == "q")
                {
                    break;
                }
            }
        }
 
        private static bool ValidateOperationSign(string sign)
        {
            switch (sign)
            {
                case "*":
                case "/":
                case "+":
                case "-":
                case "^":
                case "!":
                    return true;
            }
            return false;
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.143 из 5
Похожие ответы