Переделайте пожалуйста так, чтобы вместо цикла for был цикл while (должно выводиться 330, это задача на вычисление суммы четных чисел на отрезке от 20 до 40)
Любой цикл for можно переделать в while не особо думая:
for счетчик := начальное to конечное do
begin
что-то
end;
это тоже самое, что и
счетчик := начальное;
while счетчик <= конечное do
begin
что-то
счетчик := счетчик + 1;
end;
И там и там переменная счетчик сначала равна начальному значению, затем с ней что-то делают, и счетчик увеличивается. Если счетчик стал слишком большим, цикл прекращается.
Answers & Comments
Verified answer
Любой цикл for можно переделать в while не особо думая:
for счетчик := начальное to конечное do
begin
что-то
end;
это тоже самое, что и
счетчик := начальное;
while счетчик <= конечное do
begin
что-то
счетчик := счетчик + 1;
end;
И там и там переменная счетчик сначала равна начальному значению, затем с ней что-то делают, и счетчик увеличивается. Если счетчик стал слишком большим, цикл прекращается.
Переделанная программа может выглядеть так:
program more;
var
s, i: integer;
begin
s := 0;
i := 20;
while i <= 40 do
begin
if (i mod 2) = 0 then
s := s + i;
i := i + 1;
end;
writeln(s)
end.