6) Определите, что будет напечатано в результате работы следующего фрагмента программы:
var n, s: integer;
begin
s := 0;
for n:=4 to 13 do begin
s := s + 15;
end;
write(s)
end.
5) Определите значение переменных a и b после выполнения следующего фрагмента программы:
a := 2468;
b := (a mod 1000)*10;
a := a div 1000 + b;
Выведите значения а и b через пробел.\
4) Определите, что будет напечатано в результате работы следующего фрагмента программы:
var k, s: integer;
begin
s:=0;
k:=0;
while s < 100 do begin
s:=s+k;
k:=k+4;
end;
write(k);
end.
Answers & Comments
Verified answer
6. Цикл for выполнится 10 раз (значение n от 4 до 13), и каждый повтор к s будет прибавляться 15. То есть после выполнения s=1505.
a := 2468;
b := (a mod 1000)*10
a mod 1000 - остаток от деления 2468 на 1000, то есть 468.
b = 468*10 = 4680
a := a div 1000 + b;
a div 1000 - деление 2468 на 1000 с остатком, то есть 2
a = 2 + b = 4680 + 2 = 4682
Ответ: 4682 4680
4. Цикл while выполняется, пока s < 100, и каждый повтор цикла s увеличивается на k, при этом k каждый повтор цикла увеличивается на 4. То есть
1 повтор цикла: s = 0, k = 4
2 повтор цикла: s = 4, k = 8
3 повтор цикла: s = 12, k = 12
4 повтор цикла: s = 24, k = 16
5 повтор цикла: s = 30, k = 20
6 повтор цикла: s = 50, k = 24
7 повтор цикла: s = 74, k = 28
8 повтор цикла: s = 102, k = 32, условие перестало выполняться, цикл завершился.
k = 32