Задать вопрос
@NikitaSova

Как решить проблему CS0161 в C#?

Привет!

Я новичок в C# и недавно начал изучать функции. Мне надо сделать программу которая запрашивает числа, знак и выполняет действие (калькулятор короче). Но я столкнулся с проблемой, вот как она звучит:
Серьезность Код Описание Проект Файл Строка Состояние подавления
Ошибка CS0161 '"Program.Nikita(int, int, char)": не все пути к коду возвращают значение.
вот код программы:
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(am);
                Console.WriteLine(bm);
                Console.WriteLine(dm);
                Console.WriteLine(resault);

            }
        }
    }
}
  • Вопрос задан
  • 2341 просмотр
Подписаться 1 Простой 1 комментарий
Решения вопроса 2
GavriKos
@GavriKos
Ну вам даже на русском пишут (кстати переключите на английский. И код в тег код оберните)...
Что должна вернуть функция Nikita, если я в нее передам третим параметром 'q', например?
Крч функция с возвращаемым параметром должна возвращать значение ВСЕГДА. Или кидать эксепшн.
Ответ написан
Комментировать
В секции default тоже должен присутствовать return. Об этом и говорит текст ошибки "не все пути к коду возвращают значение"
default:
                   Console.WriteLine("Ошибка");
                   return значение_при_ошибке;
                   break;
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Раскоментируйте return a - b;
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы