Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка-ПРОГРАММИРОВАНИЕ -DELPHI 2007.doc
Скачиваний:
7
Добавлен:
12.11.2019
Размер:
2.04 Mб
Скачать

Раздел 4. Программирование простых циклических алгоритмов в системе

DELPHI

4.1. Вводные замечания

В данном разделе осуществляется изучение операторов цикла языка Delphi, приобретение навыков программирования простых циклических алгоритмов, ввода, компиляции и отладки программ.

4.2. Основные понятия

На языке Delphi существуют три оператора цикла, начинаю­щиеся с ключевых слов while, repeat и for.

Оператор while

Если результат вычисления условия равен true (правда), то тело цикла выполняется и снова осуществляется переход к провер­ке условия.

Если результат вычисления условия равен false (ложь), то происходит выход из цикла и переход к оператору, следующему за циклическим оператором while.

Если перед первым выполнением цикла значение выражения было false, тело цикла вообще не выполняется и происходит пере­ход на следующий оператор.

Пример: вычисление суммы нечетных чисел в интервале 0-10.

Procedure А; var К, S: integer; begin

S:=0;K:=1;

while (K<11) do

begin

S-S+K; K:=K+2;

end; end;

Оператор repeat

repeat <тело цикла> until <условие> ;

Рис. 4.2. Блок-схема алгоритма оператора Repeat

Условие представляет собой булевское выражение, тело цик­ла - один или несколько операторов. Если тело цикла состоит из нескольких операторов, то эти операторы можно не заключать в операторные скобки.

Тело цикла оператора repeat выполняется, по крайней мере, один раз, так как проверка условия выполняется после тела цикла. Поэтому данный оператор цикла используется реже по сравнению с другими операторами цикла.

Тело цикла оператора repeat выполняется, пока условие равно false.

Пример: вычисление суммы чисел от 1 до 100.

d:=l; s:=0;

repeat

s:=s+d;

d:=d+i; until (d>100);

Рекомендуется использовать оператор repeat для контроля диапазона входных данных.

Оператор for

Параметр цикла уменьшается на 1 при каждом выполнении тела цикла:

for <параметр цикла>:= s1 downto s2 do <тело цикла>;

si и s2 - выражения, определяющие соответственно начальное и конечное значение параметра цикла.

Тело цикла - один простой или составной оператор. Параметр цикла, его начальное и конечное значения должны принадлежать к одному и тому же типу данных. Не допускается вещественный тип.

Приведённые ниже примеры операторов циклов демонстри­руют значения, принимаемые счетчиками циклов, в процессе вы­полнения программы.

Операторы: Значения:

Fo rk:=10 to 14 do labell.Caption:=k; 10 11 12 13 14

for k:=14 downto 11 do labell.Caption:=k; 14 13 12 11

for c:='a' to 'e' do labell.Caption:=c; a b с d e

for c:='e' downto 'a' do labell.Caption:=c; e d с b a

В операторе for не допускаются изменения параметра цикла на величину, отличную от 1.

Функционально оператор for является частным случаем опе­ратора while.

4.3. Пример программирования циклических алгоритмов

Задание: вычислить сумму целых чисел, значения которых лежат в диапазоне от xl до х2.