Напишите программу на языке pascal которая будет угадывать число от 1 до 1000 задуманное пользователем за наименьщее число шагов если программа предложила большее число то пользователь нажимает < если программа предложила меньшее число то пользователь нажимает > а если угадала то = Тема циклы
program GuessNumber; var min, max, number, attempts: Integer; response: Char; begin min := 1; max := 1000; attempts := 0; writeln('Загадайте число от 1 до 1000.'); repeat number := (min + max) div 2; writeln('Это число ', number, '?'); writeln('Ответьте < если число меньше, > если число больше, = если число угадано.'); readln(response); if response = '<' then max := number - 1 else if response = '>' then min := number + 1; attempts := attempts + 1; until response = '='; writeln('Программа угадала число за ', attempts, ' попыток.'); end.
Алгоритм бинарного поиска позволяет угадать число за наименьшее количество шагов. При каждой попытке программа предлагает число в середине диапазона возможных чисел и, в зависимости от ответа пользователя (<, > или =), уменьшает диапазон поиска в два раза.
var
min, max, number, attempts: Integer;
response: Char;
begin
min := 1;
max := 1000;
attempts := 0;
writeln('Загадайте число от 1 до 1000.');
repeat
number := (min + max) div 2;
writeln('Это число ', number, '?');
writeln('Ответьте < если число меньше, > если число больше, = если число угадано.');
readln(response);
if response = '<' then
max := number - 1
else if response = '>' then
min := number + 1;
attempts := attempts + 1;
until response = '=';
writeln('Программа угадала число за ', attempts, ' попыток.');
end.
Алгоритм бинарного поиска позволяет угадать число за наименьшее количество шагов. При каждой попытке программа предлагает число в середине диапазона возможных чисел и, в зависимости от ответа пользователя (<, > или =), уменьшает диапазон поиска в два раза.