Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpora_infa.doc
Скачиваний:
7
Добавлен:
27.09.2019
Размер:
133.63 Кб
Скачать

28) Алгоритмизация циклических действий

Иногда внутри тела цикла бывает необходимо организовать внутренний цикл. Такая структура С определенным числом повторений

(цикл с параметром, или цикл со счетчиком, или цикл «Для»)

С неопределенным числом повторений

С предусловием

(цикл «Пока») Предписывает выполнять тело цикла

до тех пор, пока выполняется условие, записанное после слова «Пока».

С постусловием

_______ (цикл «До»)

Предписывает выполнять тело цикла для всех значений некоторой переменной {параметра цикла) в заданном диапазоне.

1.  Вычисляются значения выражений, определяющие начальное и конечное значения параметра цикла;

2.  параметру цикла присваивается начальное значение;

3.  параметр цикла сравнивается с конечным значением;

4.  если параметр цикла превосходит (при положительном шаге) конечное значение параметра цикла (или, наоборот, меньше конечного значения параметра цикла при отрицательном шаге), переход к п. 8, иначе к следующему пункту;

5.  выполняется тело цикла;

6.  параметр цикла автоматически изменяется на значение шага;

7.  переход к п. 3;

8.  конец цикла.

29) Оператор цикла While

В большинстве задач цикл вычислений приходиться выполнять неизвестное число раз. Вычисление значения должно прекратиться при выполнении  какого либо условия. Для проведения подобных вычислений удобно использовать условный оператор цикла:

while условие do тело цикла

  • while, do - зарезервированные слова;

  • условие - произвольное логическое выражение;

  • тело цикла - любой оператор, в большинстве составной оператор.

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

Используя данную конструкцию надо быть уверенным что условие рано или поздно станет ложным, иначе программа может зависнуть (зациклиться). И для такого случая необходимо будет предусмотреть прерывание с помощью оператора breakили функциями Exit или Abort.

 Создадим приложение в котором будем рассчитывать сумму первых десяти чисел: 1+2+3+ + 10. Расположим на форме кнопку и Label для вывода информации. Для кнопки сделаем такой обработчик:

procedure TForm1.Button1Click(Sender: TObject);

var

i, sum : integer;

begin

i := 1;

sum := 0;

while (i < 11) do

begin

sum := sum + i;

i := i + 1;

end;

label1.Caption := IntToStr(sum);

end;

i это наши числа от 1 до 10 с каждым шагом цикла будет происходить увеличение на единицу. sum - накапливаемая сумма.

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

Итог: нами был рассмотрен оператор языка Delphi оператор цикла while и его применение.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]