Почему цикл выполняется три раза вместо одного - C#
Формулировка задачи:
Программа выводит конструкцию циклов в языке C#. Задача сделать так , чтоб меню опроса выползало пока не будет введен нужный символ. Вроде сделал всё правильно, но почему то это меню у меня выводит 3 раза вместо одного.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace project_3 { class Program { static void Main() { char choice = '0'; while (choice<'1'|choice>'5') { Console.WriteLine("Выберете последовательность операторов"); Console.WriteLine("1.if-else"); Console.WriteLine("2.switch-case"); Console.WriteLine("3.while"); Console.WriteLine("4.do-while"); Console.WriteLine("5.for"); choice = (char)Console.Read(); } switch (choice) { case '1': Console.Write("if(условие)\n{\nдействие;\n}\nelse\n{\nдействие\n}"); break; case '2': Console.Write("switch(выражение)\n{\ncase константа 1;\nпоследовательность операторов\nbreak;\ncase константа 2;\nпоследовательность операторов\nbreak;\ncase константа n;\nпоследовательность операторов\nbreak;\ndefault;\nпоследовательность операторов\nbreak;\n}"); break; case '3': Console.Write("while (условие) оператор;"); break; case '4': Console.Write("do {\nоператоры;\n} while (условие);"); break; case '5': Console.Write("for(инициализация переменной; условие; шаг)\n{\nблок операторов;\n{"); break; default: Console.Write("Выбери ответ из списка\n"); break; } Console.ReadKey(); } } }
Решение задачи: «Почему цикл выполняется три раза вместо одного»
textual
Листинг программы
choice = Console.ReadKey().KeyChar;
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д