Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Хочу сделать калькулятор на c#,подскажите пожалуйста.

Павел Ранов Ученик (119), на голосовании 3 месяца назад
Хочу сделать так, чтобы Если человек вводит +
то те числа, которые он вводит, складывались.
А если вводит -
То те числа, которые он ввел, вычитались.
Проблема в том, что даже если ввожу -, числа серавно складываются. Наверно глупый вопрос, но не нашел не где ответ. Спасибо за ранее.
Голосование за лучший ответ
Лео Коссовский Мыслитель (5189) 4 месяца назад
using System;

class Program
{
static void Main()
{
Console.WriteLine("Введите первое число:");
double number1 = Convert.ToDouble(Console.ReadLine());

Console.WriteLine("Введите операцию (+ или -):");
string operation = Console.ReadLine();

Console.WriteLine("Введите второе число:");
double number2 = Convert.ToDouble(Console.ReadLine());

double result = 0;

if (operation == "+")
{
result = number1 + number2;
Console.WriteLine($"Результат сложения: {result}");
}
else if (operation == "-")
{
result = number1 - number2;
Console.WriteLine($"Результат вычитания: {result}");
}
else
{
Console.WriteLine("Неправильно введена операция. Введите + или -.");
}

Console.ReadLine(); // Чтобы консольное окно не закрывалось сразу
}
}
Павел РановУченик (119) 4 месяца назад
Спасибо большое,а если я помимо + или -,хочу добавить умножение и деление?
Лео Коссовский Мыслитель (5189) Павел Ранов, using System; class Program { static void Main() { Console.WriteLine("Введите первое число:"); double number1 = Convert.ToDouble(Console.ReadLine()); Console.WriteLine("Введите операцию (+, -, *, /):"); string operation = Console.ReadLine(); Console.WriteLine("Введите второе число:"); double number2 = Convert.ToDouble(Console.ReadLine()); double result = 0; switch (operation) {
Лео Коссовский Мыслитель (5189) 4 месяца назад
case "+":

result = number1 + number2;

Console.WriteLine($"Результат сложения: {result}");

break;

case "-":

result = number1 - number2;

Console.WriteLine($"Результат вычитания: {result}");

break;

case "*":

result = number1 * number2;

Console.WriteLine($"Результат умножения: {result}");

break;

case "/":

if (number2 != 0)

{

result = number1 / number2;

Console.WriteLine($"Результат деления: {result}");

}

else
Лео Коссовский Мыслитель (5189) 4 месяца назад
Console.WriteLine("Ошибка: деление на ноль!");



}



break;



default:



Console.WriteLine("Неправильно введена операция. Введите +, -, *, или /.");



break;



}







Console.ReadLine(); // Чтобы консольное окно не закрывалось сразу



}



}
Максим Искусственный Интеллект (212042) 4 месяца назад
  1. Учись пользоваться else if.
  2. if (b == "-") ; - убери тут ;
  3. Старайся не дублировать код. Ввод двух чисел никак не зависит от введённого оператора, так что ни к чему его дублировать.
  4. Давать нормальные имена переменным без всяких a,b,c,temp. Если ты вводишь оператор, то и назови его operator. Если число, то и назови хотя бы num1, num2.
  5. Зачем ты вводишь в своем коде оператор дважды (a и b), хотя должен вводишь лишь один раз - не понятно.
Jurijus Zaksas Искусственный Интеллект (443434) 4 месяца назад
Начни с задач попроще, освойся с синтаксисом, осознай простую вещь: если ты скопировал кусок кода - значит, ты сделал что-то плохое. То, что у тебя написано, просто абсолютно ужасно, здесь нечего исправлять, это надо забыть как страшный сон и написать правильно.
Похожие вопросы