8. Определите значение переменной c после выполнения следующего фрагмента программы, запишите решение:
a:=100;
b:=20;
repeat
i:= a div b;
c:=i + 5;
b:= a div b;
until b>=100;

NotLikeThis NotLikeThis    1   01.06.2020 08:32    3

Ответы
Dinara260803 Dinara260803  15.10.2020 12:42

Фрагмент программы будет выполнятся вечно, значение переменной c получить нельзя.

Объяснение:

Присваиваем переменной a число 100:

a:=100;

Присваиваем переменной b число 20:

b:=20;

Далее идёт цикл с постусловием, выполняем тело, пока b не станет больше или равна 100:

repeat

i:= a div b;

c:=i + 5;

b:= a div b;

until b>=100;

Смотрим:

i  =  a div b  =   100 div 20  =  5c =  i + 5  =  5 + 5  =  10 b =  a div b   =   100 div 20  =  5

b>=100 ? нет  =>  ещё раз:

i  =  a div b  =   100 div 5  =  20c =  i + 5  =  20 + 5  =  25b =  a div b   =   100 div 5  =  20

Переменная b изначально была равна 20, а через 2 прохода цикла, она также стала 20. Делаем вывод: это замкнутый цикл, выполнятся он будет вечно, так как переменная b никогда не будет >=100.

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика