Пятница, Октябрь 30Добро пожаловать!

Понятие инструкции for в языке Delphi

Чтобы понять, как работает цикл for в языке Delphi, рассмотрим одну задачу. Предположим, что необходимо разработать программу, вычисляющую значение функции y=5*x*x-7 в следующих точках: x=-1, x=-0.5, x=0, x=0.5, x=1 (таблицу выведем в поле метки Label1 формы приложения). Напишем процедуру, которая решит поставленную задачу (представим один из ее вариантов):

Как Вы можете заметить, в тексте данной процедуры группа инструкций

которая вычисляет значение функции, формирует строки таблицы и осуществляет увеличение аргумента, повторяется 5 раз. Используя инструкцию for, можно представить представленную процедуру следующим образом:

цикл for delphi

А теперь сравним два варианта процедуры:

  1. Для создания второго варианта потребовалось меньше усилий в процессе набора;
  2. Процедура в втором варианте более гибкая: для увеличения количества строк в отображаемой таблице, к примеру, до 15, остается лишь в строке <for i:=1 to 5 do begin> провести замену числа 5 на число 15.

Применение цикла for в Delphi эффективно тогда, когда некоторая последовательность действий выполняется несколько раз (если заранее известно количество повторений).

Цикл for в языке Delphi имеет общий вид:

откуда

  • счетчик (тип integer) означает переменную-счетчик количества повторений некоторых инструкций цикла;
  • нач_знач (тип integer) подразумевает выражение, которое является начальным значением счетчика циклов;
  • кон_знач (тип integer) обозначает выражение, являющееся конечным значением счетчика циклов.

Определить, сколько раз (обозначим это число за m) повторяются инструкции цикла, можно, воспользовавшись следующей формулой:

Примеры цикла for в Delphi

А теперь приведем примеры использования инструкции for Delphi:

Пример 1.

Пример 2.

Заметка. В случае, когда между служебными словами begin и end располагается только одна инструкция, то зарезервированные слова begin и end опускаются.

Как устроен алгоритм инструкции for, покажет следующая иллюстрация:

Если внимательно приглядеться к приведенному алгоритму, то можно заметить, что если конечное значение счетчика не превышает его начального значения, то инструкции между служебными словами begin и endвыполняться не будут. Нельзя не отметить, что после того, как  завершилось очередное выполнение инструкции тела цикла, увеличение счетчика циклов происходит автоматически.

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

Пример 3.
После того, как выполнены следующие инструкции

в переменной tab1 будут содержаться изображения таблицы, состоящей из квадратов чисел.

Пример 4.
В качестве примера приведем программу, производящую вычисление суммы первых десяти элементов ряда 1+1/2+1/3+1/4+ … +1/n (свяжем значение i-того элемента данного ряда с его номером при помощи формулы 1/i). Таким образом, в диалоговом коне программы необходимо присутствие как минимум двух компонент: поля меткиLabel1 и командной кнопки Button1. Чтобы вычислить сумму первых десяти членов ряда и вывести полученный результат, воспользуемся процедурой обработки событий Onclick (ее код представление ниже).

Как только вычислен очередной элемент ряда, при помощи данной процедуры осуществляется вывод в поле Label1 номера элемента и его значения в поле метки формы, которое и предназначено собственно для вывода полученного результата.

Заметка. Если необходимо, чтобы значения счетчика не увеличивалось, а уменьшалось, то необходимо в инструкции for слово to заменить на слово downto.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *