+ 1

C# switch 14.3 Help my

Не могу решить задачу 14.3, не работает default

22nd Jul 2021, 8:45 PM
Руслан Зуенок
Руслан Зуенок - avatar
7 Answers
+ 2
Это же C#. У вас нет break в case 3 ☺️
22nd Jul 2021, 9:09 PM
Solo
Solo - avatar
+ 1
namespace SoloLearn { class Program { static void Main(string[] args) { int num = Convert.ToInt32(Console.ReadLine()); switch ( num ) { case 1: Console.WriteLine ("Easy"); break ; case 2: Console.WriteLine ("Medium"); break ; case 3: Console.WriteLine ("Hard"); default: Console.WriteLine ("Invalid option"); break ; } } } }
22nd Jul 2021, 8:45 PM
Руслан Зуенок
Руслан Зуенок - avatar
+ 1
Vasiliy, вы правы, благодарю!)
22nd Jul 2021, 9:15 PM
Руслан Зуенок
Руслан Зуенок - avatar
0
Вы создаете игру, в которой игрок может выбирать уровень сложности: 1 - Easy 2 - Medium 3 - Hard Вам дана программа, которая использует номер в качестве вводных данных. Завершите программу таким образом, чтобы она вывела соответствующий уровень сложности. При вводе недействительного номера, программа должна вывести "Invalid option". Пример вводных данных 2 Пример результата Medium
22nd Jul 2021, 8:46 PM
Руслан Зуенок
Руслан Зуенок - avatar
0
Используйте default для вывода сообщения invalid option.
22nd Jul 2021, 8:47 PM
Руслан Зуенок
Руслан Зуенок - avatar
0
Ролью выражения break является выход из оператора switch. Без него, выполнение продолжается, начиная с соответствующего выражения case, и проходит сквозь следующие выражения case, даже если эти случаи не соответствуют проверяемой переменной оператора switch. Такое поведение называется проваливающимся, и современные компиляторы языка C# не скомпилируют такой код. Все case и default должны заканчиваться оператором break.
22nd Jul 2021, 9:04 PM
Руслан Зуенок
Руслан Зуенок - avatar
0
Vasiliy, конечно проверил ваш вариант, но увы. Спасибо что откликнулись!)
22nd Jul 2021, 9:06 PM
Руслан Зуенок
Руслан Зуенок - avatar