Цикл с предусловием (WHILE . . . DO . . .) многократно выполняет одни и те же действия при истинности условия, которое изменяется обычно внутри цикла. Истинность условия проверяется перед выполнением операторов. Таким образом, если условие с самого начала оказалось ложным, то операторы тела цикла не будут выполнены ни разу.
Если в цикле необходимо выполнить несколько простых операторов, они объединяются после служебного слова DO в составной оператор операторными скобками BEGIN . . . END (см. задачу 1).
Цикл – это многократно выполняемая
последовательность операторов (команд).
WHILE ... DO… REPEAT ... UNTIL … FOR ... TO /
DOWNTO ... DO …
Цикл с параметром (FOR … DO …) является частным
случаем цикла с предусловием.
Помните
Цикл с предусловием (WHILE . . . DO . . .) многократно
выполняет одни и те же действия при истинности
условия, которое изменяется обычно внутри цикла.
Истинность условия проверяется перед выполнением
операторов. Таким образом, если условие с самого
начала оказалось ложным, то операторы тела
цикла не будут выполнены ни разу.
Если в цикле необходимо выполнить несколько
простых операторов, они объединяются после
служебного слова DO в составной оператор
операторными скобками BEGIN . . . END (см. задачу 1).
Цикл с предусловием, цикл «пока».
Задача 1
Вычислить сумму ряда чисел 2+4+6+…+1000.
Program sum;
var a, s: integer;
Begin
writeln (‘ вычисление суммы ряда’);
a:=0; s:=0;
while a<1000 do
begin
a:=a+2; s:=s+a
end;
writeln (‘сумма ряда равна s=‘, s);
end.
1
1
3
3
1
1
4
4
1
1
600
600
Задача 2 (самостоятельно на компьютерах)
1
1
Вычислить сумму ряда чисел
...
...
Program sum;
2
2
var a, s: integer;
Begin
writeln (‘ вычисление суммы ряда’);
a:=0; s:=0;
while a<600 do
begin
a:=a+1; s:=s+1/a
end;
writeln (‘сумма ряда равна s=‘, s);
end.
5,97
Решение задачи из дом. задания
Program sum;
var
Begin
writeln (‘
readln (
a:= 1 ; s:=0;
while a< n do
begin
a:=a+1;
s:=s+а;
end;
writeln (‘сумма’ , n, ‘натуральных чисел равна s=‘, s);
end.
Для обсуждения
1
2
1
3
1
4
...
1
600
Program sum;
var a, s: real;
Begin
writeln (‘ вычисление суммы ряда’);
a:=0; s:=0;
while a<1000 do
begin
a:=a+2; s:=s+a
end;
writeln (‘сумма ряда равна s=‘, s);
end.
Материалы на данной страницы взяты из открытых истончиков либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.