@NikitaSova

Как сделать калькулятор не через case а через if C#?

Недавно сделал калькулятор с помощью функций и метода case. Но сейчас мне нужно переделать под if. Хотел спросить у вас как это можно сделать.
Заранее спасибо
Вот код:
public static int Nikita(int a, int b, char d)
{
	switch (d)
	{
		case '+':
		  return a + b;
		case '-':
		  return a - b;
		case '*':
		  return a * b;
		case '/':
		  return a / b;
		default:
		   Console.WriteLine("Ошибка");
		   break;
	}
	return a - b;
}

static void Main(string[] args)
{   
	{
		Console.Write("вевдите первое число: ");
		int am = (int)Convert.ToInt64(Console.ReadLine());
		Console.Write("введите знак: ");
		char dm = Convert.ToChar(Console.ReadLine());
		Console.Write("введите второе число: ");
		int bm = (int)Convert.ToInt64(Console.ReadLine());
		int resault = Nikita(am, bm, dm);
		Console.WriteLine(resault);

	}
}
  • Вопрос задан
  • 199 просмотров
Пригласить эксперта
Ответы на вопрос 2
edward_freedom
@edward_freedom
delegate int Math(int x, int y); //вынеси в глобальные переменные

 var actions = new Dictionary<string, Math>()
            {
                {"+", (x, y) => x + y},
                {"-", (x, y) => x - y},
                {"/", (x, y) => x / y},
                {"*", (x, y) => x * y},
            };
            var random = new Random();
            foreach (var action in actions)
            {
                var x = random.Next(1, 100);
                var y = random.Next(1, 100);
                Debug.WriteLine($"{x} {action.Key} {y} = {action.Value(x, y)}");
            }
Ответ написан
@1SLY2
NikitaSova :
int Func(int num1, int num2, char oper){
if(oper == "+"){
	return num1 + num2;
}
if(oper == "-"){
	return num1 - num2;
}
if(oper == "*"){
	return num1 * num2;
}
if(oper == "/"){
	return num1 / num2;
}
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы