Назад к вопросам
JuniorТеорияЧасто
Что произойдёт при компиляции и запуске программы?
Console.WriteLine(Abs(-7) + " " + Abs(7));
int Abs(int n)
{
if (n < 0)
{
return -n;
}
}Не скомпилируется
- Ждать
7 0: метод не возвращает0сам по себе — компилятор требуетreturnна каждом пути и останавливает компиляцию с ошибкойCS0161. - Ждать сбой только при вызове
Abs(7): компилятор проверяет все пути метода до запуска, поэтому программа не компилируется и ничего не печатает.
- Как исправить
Abs, чтобы программа собралась и напечатала7 7? - Почему метод всё равно не компилируется, если в конце стоит
if (n >= 0) return n;?