Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi, Pascal.docx
Скачиваний:
8
Добавлен:
26.04.2019
Размер:
566.19 Кб
Скачать

12. Приведите примеры схем циклических алгоритмов и их программ с исполь­зованием оператора repeat.

Под циклом понимается многократное выполнение одних и тех же операторов при различных значениях промежуточных данных. Число повторений может быть задано в явной или неявной форме. Для организации повторений в языке Pascal предусмотрены три различных оператора цикла, один из них оператор repeat:

*Оператор repeat:

repeat

<операторы>

until<условие>;

организует повторение операторов, помещенных между ключевыми словами repeat и until, до тех пор, пока не выполнится <условие>=true, после чего управление передается следующему за циклом оператору.

Оператор repeat имеет три характерные особенности: -выполняется по крайней мере один раз; -тело цикла выполняется, пока условие равно false; -в теле может находиться произвольное число операторов без операторных скобок begin...end. По крайней мере один из операторов тела цикла должен влиять на значение условия, иначе цикл будет выполняться бесконечно. Пример:

I:=0;

Repeat

I:=I+1;

Writeln(I);

Until I>10;

13. Приведите примеры схем циклических алгоритмов и их программ с исполь­зованием оператора while.

Под циклом понимается многократное выполнение одних и тех же операторов при различных значениях промежуточных данных. Число повторений может быть задано в явной или неявной форме. Для организации повторений в языке Pascal предусмотрены три различных оператора цикла, один из них оператор while:

* Оператор while:

While<условие>do begin

<операторы>

end;

организует повторение операторов, помещенных между begin и end, до тех пор, пока не выполнится <условие>=false. Заметим, что если <условие>=false при первом входе, то <операторы> не выполнятся ни разу, в отличие от repeat, в котором хотя бы один раз они выполнятся.

Как и в операторе repeat, программист сам должен позаботиться об изменении переменных, определяющих условие выхода, иначе цикл получится бесконечным. Выйти из цикла можно, минуя вычисление выражения условия, с помощью процедуры break. Пример:

I:=1;

While I<10 Do

Begin

I:=I+1;

Writeln(I);

End;

14.Приведите примеры схем циклических алгоритмов и их программ с исполь­зованием оператора for.

Под циклом понимается многократное выполнение одних и тех же операторов при различных значениях промежуточных данных. Число повторений может быть задано в явной или неявной форме. Для организации повторений в языке Pascal предусмотрены три различных оператора цикла, один из них оператор for:

*Оператор for:

for i:=i1 to i2 do begin

<операторы>

end;

организует повторение операторов при нарастающем изменении переменной цикла i от начального значения i1 до конечного i2 с шагом “единица”. Заметим, что если i2>i1, то <операторы> не выполнятся ни разу. Модификация оператора for i:=i2 downto i1 do begin <операторы> end организует повторения при убывающем изменении i на единицу.

Для прекращения выполнение цикла используется процедура Break, которая прерывает выполнение тела любого цикла и передает управление следующему за циклом оператору. Для прерывания текущей итерации цикла и передачи управления следующей, используется процедура Continue.

Параметры цикла, его начальные и конечные значения должны принадлежать к одному и тому же типу данных. В операторе for Pascal не допускает изменение параметра цикла на величину, отличную от единицы. Однако это не является большим недостатком, так как любой шаг можно задать при организации циклов в операторах repeat и while. В теле оператора for могут находиться другие операторы for. Это позволяет строить циклы, содержащие внутренние циклы. Такие внутренние циклы называются вложенными:

for i:=1 to 10 do

for j:=1 to 5 do

a[i,j]:=0; {обнуление элементов матрицы}

Пример:

For I:=1 to 5 Do;

Begin

A:=A+I;

B:=B*I

Writeln(A,B);

End;