Console calculator - C#
Формулировка задачи:
Писал консольный калькулятор.
После введения всех переменных и типа производимого действия благополучно выкидывает из программы.
Написана только основная часть, те все частные случаи (невозможность извлечения sqrt из отр. чисел и т.д.) начну рассматривать после того, как заработает нормально основная часть.
По идее должно быть из-за проблем доступа, те не видит переменные из основной части класса, в блоках условных операторов, но как его обеспечить - ума не приложу.
Собственно, основная часть:
Хотелось бы узнать, что не так?
Листинг программы
- using System;
- namespace Project5
- {
- public class Calculator
- {
- public static int b;
- public static int a;
- public static void Main()
- {
- char ch;
- int x;
- int b;
- int a;
- Console.WriteLine("Type first number");
- a = Console.Read();
- Console.WriteLine("Choose action and type on of the following actions: + - * / ^ sqrt(for sqrt type just s)");
- x = Console.Read();
- ch = Convert.ToChar(x);
- Console.ReadKey();
- Console.WriteLine("\nType second number");
- b = Console.Read();
- Console.ReadKey();
- if (ch == 's')
- {
- var c = Math.Sqrt(a);
- Console.WriteLine(c);
- }
- if (ch == '+')
- {
- var c = a + b;
- Console.WriteLine(c);
- }
- else if (ch == '-')
- {
- var c = a - b;
- Console.WriteLine(c);
- }
- else if (ch == '*')
- {
- var c = a*b;
- Console.WriteLine(c);
- }
- else if (ch == '/')
- {
- var c = a/b;
- Console.WriteLine(c);
- }
- else if (ch == '^')
- {
- var c = Math.Pow(a, b);
- Console.WriteLine(c);
- }
- }
- }
- }
Решение задачи: «Console calculator»
textual
Листинг программы
- string text = Console.ReadLine();
- Match expression = Regex.Match(text, @"\D", RegexOptions.IgnoreCase);
- if (expression.Success)
- throw new Exception("You need use only digist!");
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д