Игра "Угадать число" при переигровке показывает неверные результаты - C#
Формулировка задачи:
Программа работает правильно, только когда угадываю число (допустим 43 с 5-й попытки), затем нажимаю 1, чтобы попробывать ещё раз и если опять ввожу это же число - 43, то программа пишет "Невероятно, вы угадали с 1-й попытки"... Но так не должно быть, цикл должен повторяться и значение угаданного числа сбрасываться... Где ошибка ?
Random rnd = new Random(); int secretNum = rnd.Next(1, 100); int tryCount = 1; int UserNum; do { Console.Clear(); Console.WriteLine("Я загадал число от 0 до 100"); UserNum = Convert.ToInt32(Console.ReadLine()); while (UserNum != secretNum && tryCount < 7) { tryCount++; if (UserNum > secretNum) { Console.WriteLine("Загаданное число меньше"); } else { Console.WriteLine("Загаданное число больше"); } if (tryCount >= 4) { int kr = rnd.Next(2, 9); Console.WriteLine("Загаданное число {0} {1}", secretNum % kr == 0 ? "кратно" : "некратно", kr); } UserNum = Convert.ToInt32(Console.ReadLine()); } if (UserNum == secretNum && tryCount == 1) { Console.WriteLine("Невероятно!Вы угадали с 1-ой попытки"); } else if (UserNum == secretNum && tryCount != 1) { Console.WriteLine("Поздравляю, вы угадали с {0} попытки", tryCount); } else { Console.WriteLine("Вы использовали все попытки"); } Console.ReadKey(); Console.WriteLine("Нажмите 1, чтобы повторить попытку"); tryCount = 1; } while (Console.ReadKey().KeyChar == '1');
Решение задачи: «Игра "Угадать число" при переигровке показывает неверные результаты»
textual
Листинг программы
int secretNum = rnd.Next(1, 100);
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д