Решение:
Давайте разберем оба варианта алгоритма и найдем значение переменной s.
Вариант а)
s:= 0;
m:=6:
for i:=3 to m do
s:=s+i;
- Инициализация: s = 0.
- Цикл for выполняется для i от 3 до 6 (включительно).
- Когда i = 3: s = 0 + 3 = 3.
- Когда i = 4: s = 3 + 4 = 7.
- Когда i = 5: s = 7 + 5 = 12.
- Когда i = 6: s = 12 + 6 = 18.
В первом варианте s = 18.
Вариант б)
s:=0;
i:=5;
while i>0 do
begin
i:=i-1;
s:=s+i;
end;
- Инициализация: s = 0, i = 5.
- Цикл while выполняется, пока i > 0.
- Итерация 1: i = 5 > 0.
i := 5 - 1 = 4.
s := 0 + 4 = 4. - Итерация 2: i = 4 > 0.
i := 4 - 1 = 3.
s := 4 + 3 = 7. - Итерация 3: i = 3 > 0.
i := 3 - 1 = 2.
s := 7 + 2 = 9. - Итерация 4: i = 2 > 0.
i := 2 - 1 = 1.
s := 9 + 1 = 10. - Итерация 5: i = 1 > 0.
i := 1 - 1 = 0.
s := 10 + 0 = 10. - Итерация 6: i = 0, условие i > 0 ложно, цикл завершается.
Во втором варианте s = 10.
Ответ: Для варианта а) s=18, для варианта б) s=10.