Цикл с предусловием 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.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: