Регистрация
Войти
Стать экспертом Правила
Информатика

Дана программа, способная угадать загаданное нами число при помощи вопросов: Ваше число больше или меньше такого-то... Программа не способна угадать число - 50. Для исправления ошибки необходимо заменить одну или две переменных. Особое внимание обращается на тот факт, что в начале в условии допускается 5 различных значений. Однако переменная - x в программе не используется.
var a,b,x,y,z:integer;
begin
writeln('1-да, 0-нет');
z: = 0; a: = 1; b: = 100;
while b-a>1 do begin
z: = ((a+b)div 2);
writeln('число больше ', z);
readln(y);
if y = 1 then a: = z
else b: = z;
end;
writeln('Ваше число ', z);
end.

ОТВЕТЫ
Не знаю чего именно там хотели, но так программа работает и при 50

var
    a, b, y, z: integer;

begin
    writeln(1-да, 0-нет);
    a := 1;
    b := 100;
   
    while b - a gt; 0 do
    begin
        z := (a + b) div 2;
        writeln( число больше , z);
        readln(y);
        if y = 1 then
            a := z + 1
        else
            b := z;
    end;
   
    writeln(Ваше число , a);
end.

228
Контакты
Реклама на сайте
Спрошу
О проекте
Новым пользователям
Новым экспертам