Определите значение переменной y, которое будет получено в результате выполнения следующей программы:
var y : real; i : integer;
begin y:=0; i:=1;
repeat i:=2*i;
y:=y+i
until i>5;
end.
Ответы
Ответ дал:
1
Ответ:
у=2
Объяснение:
начало программы
1) у=0, i=1
2) i=2*1=2, y=0+2=2
3) i=2>5 (нет)→
конец программы
supersonichedgehog:
Тесты считывают ответ 2 как неправильный
проверьте правильность условия, потому что оно крайне странное (увеличение i в 2 раза пока i>5)
если бы первоначально было бы i больше 5, то программа вообще зациклилась бы
может должен быть знак <, а не >?
Я копирую условие. Возможно составитель ошибся. Если изменить условие на i<5, то какой будет ответ? Спасибо
Ну, я вводила 2 и 3) Оба неверны
а, извините, перепутала чутка условие
посмотрите второй ответ, он верен
хотя нет, стоп
ну да, ответ 14
Ответ дал:
1
Ответ:
14
Объяснение:
y = 0
i = 1
i = 2 * 1 = 2
y = 0 + 2 = 2
2 > 5 (нет)
i = 2 * 2 = 4
y = 2 + 4 = 6
4 > 5 (нет)
i = 2 * 4 = 8
y = 6 + 8 = 14
8 > 5 (да)
Цикл repeat выполняется пока условие ложно, при истинном условии выполнение цикла прекращается.
Вас заинтересует
2 года назад
2 года назад
2 года назад
2 года назад
8 лет назад
9 лет назад
9 лет назад