Хорошо, посмотрим на каждую задачу по очереди и решим их.
- Дан фрагмент программы:
n := 5;
s := 0;
for i := 1 to n do s := s + i * i;
writeln('s = ',s);
Здесь цикл for будет последовательно подставлять в переменную i значения от 1 до n (включительно), и каждый раз к переменной s будет прибавляться i в квадрате. Так как n = 5, то мы выполним следующие операции:
- При
i = 1:s = 0 + 1 * 1 = 1 - При
i = 2:s = 1 + 2 * 2 = 5 - При
i = 3:s = 5 + 3 * 3 = 14 - При
i = 4:s = 14 + 4 * 4 = 30 - При
i = 5:s = 30 + 5 * 5 = 55
В итоге, после выполнения цикла s = 55. Это и будет вывод программы.
- Следующий фрагмент программы:
p := 1;
s := 0;
for i := 2 to 10 do
begin
s := s + 2*i + i * (i + 1);
p := p * (i - 1);
end;
writeln(s, p);
Здесь цикл начинается с i = 2 и заканчивается значением i = 10. Выполним шаги цикла:
- При
i = 2:s = 0 + 2*2 + 2*(2 + 1) = 12,p = 1 * (2 - 1) = 1 - При
i = 3: `s = 12 + 23 + 3(3 + 1
