Цикл с предусловием WHILE
Цикл с предусловием WHILE используется тогда, когда число повторений оператора цикла заранее не известно, а задается некоторое условие продолжение цикла.
Форма записи:
WHILE <лог выр-ние / условие> DO BEGIN операторы
циклической части
программы
END
WHILE ( пока ) DO( выполнять )
Сначала выполняется значения условия . Пока оно истинно выполняются операторы циклической части . Когда только оно становится ложным, происходит выход из цикла. Если условие ложно то цикл не выполняется ни разу. Возможен случай , когда в циклической части стоит оператор перехода (EXIT, GOTO) передающий управление за пределы цикла. В такой ситуации цикл может завершиться до его естественного окончания.
Данная конструкция может работать, как конструкция цикла со счетчиком, но при этом необходимо изменять переменную, являющуюся счетчиком, с помощью оператора присваивания. В конструкции WHILE вы можете выбирать любой необходимый вам шаг.
Пример : a:=1;
n:=1;
WHILE 2-a<=3-n+1 DO
BEGIN
a:=a+2;
n:=n+1
END;
Блок-схема цикла «Пока»
нет Условие
да
Тело цикла |
Задача 1.Найти количество чисел, сумма которых превысит 100.
PROGRAM N;
var k:integer;
s:integer;
begin
s:=0; k:=0;
while s<=100 do
begin
k:=k+1;
s:=s+k
end;
writeln(‘количество слагаемых=’,k);
end.
Задача 2.Вычислить сумму четных чисел на отрезке от 10 до 30.
PROGRAM N;
var k:integer; {очередное слагаемое}
s:integer; {сумма}
begin
s:=0; k:=10;
while k<=30 do
begin
s:=s+k;
k:=k+2
end;
writeln(‘сумма четных чисел от 10 до 30=’,s);
end.
Задача 3.Напечатать в виде таблицы значения функции y=4x2 - 2x + 3, для значений x, изменяющегося от -4 до 2 с шагом 0.5
PROGRAM N;
var x:integer;
y:real;
begin
x:=-4;
while x<=2 do
begin
y=4*x*x-2*x+3;
x:=x+0.5
end;
writeln(‘при x=’,x,’ y=’,y:8:3);
end.
Дата добавления: 2015-01-15; просмотров: 1373;