Угадывание числа. Консольное приложение - C#
Формулировка задачи:
Помогите, пожалуйста, составить программу:
В этой лабораторной работе требуется создать программу, которая угадывает число, загаданное пользователем. Для этого, программа задаёт пользователю вопросы, ответом на которые может быть только «да» или «нет».
Пользователь загадывает число от 1 до 100000. Программа должна задать не более 100 вопросов для того чтобы угадать загаданное число или установить противоречивость ответов пользователя. Противоречивость ответов пользователя – ситуация, в которой не существует чисел из указанного диапазона, соответствующих ответам пользователя.
Решение задачи: «Угадывание числа. Консольное приложение»
textual
Листинг программы
int min = 1;
int max = 100000;
while (max > min)
{
int middle = (max + min) / 2;
Console.WriteLine($"Is number greater than {middle}?(y/n)");
string answer = Console.ReadLine();
switch (answer)
{
case "y":
min = middle + 1;
break;
case "n":
max = middle;
break;
default:
throw new Exception("Unexpected answer!");
}
}
if (max < min)
Console.WriteLine("Contradiction detected");
else
Console.WriteLine($"It is number {max}");