Предмет: Информатика, автор: rudenko12

Определите, что будет напечатано в результате работы следующего фрагмента программы:



var k, s: integer;
begin
s:=0;
k:=0;
while s < 80 do begin
s:=s+2*k;
k:=k+4;
end;
write(s);
end.

Ответы

Автор ответа: Курчик
0
В результате выполнения данной программы будет напечатано 80. 
Автор ответа: rudenko12
0
можно более подробное объяснение.
Автор ответа: Курчик
0
s = 0;
k = 0;
пока s < 80 выполняем:
s = s + 2*0 = 0
k = k + 4 = 4
0 < 80, да, дальше:
s = s + 2*4 = 8;
k = k + 4 = 8
8 < 80, да, дальше:
s = 8 + 2*8 = 24;
k = 8 + 4 = 12;
24 < 80, да, дальше:
s = 24 + 24 = 48;
k = 12 + 4 = 16;
48 < 80, да, дальше:
s = 48 + 16*2 = 80;
k = 16 + 4 = 20;
80 < 80, нет.

s = 80.
Автор ответа: Spin17
0
k с каждой итерацией цикла увеличивается на 4 (0; 4; 8; 12; 16)
А в s копится сумма всех k умноженных на 4. Это происходит до тех пор, пока s не станет больше или равен 80
s = 4*4 + 4*8 + 4*12 + 4*16 = 80
на экране напечатается значение s, т.е. 80
Похожие вопросы
Предмет: История, автор: krngumirova
Предмет: Физика, автор: maks14297