Циклы в Delphi: Инструкция for

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

 

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

 

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

 

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

 

В программе цикл может быть реализован при помощи инструкций for,while И repeat.

Инструкция for

Рассмотрим следующую задачу.

Пусть нужно написать программу, которая вычисляет значение функции у = 5 х2 - i в точках -1, -0.5, 0, 0.5 и 1(таблица должна быть выведена в поле метки формы приложения). Процедура, обеспечивающая решение поставленной задачи, может выглядеть так:

 

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


 

Второй вариант процедуры, во-первых, требует меньше усилий при наборе, во-вторых, процедура более гибкая: для того чтобы увеличить количествострок в выводимой таблице, например до десяти, достаточно в строке

for i:=1 to 5 do
 

число 5 заменить на 10. 

Инструкция for используется в том случае, если некоторую последовательность действий (инструкций программы) надо выполнить несколько раз, причем число повторений заранее известно.

 

В общем виде инструкция for записывается следующим образом:

 

где:

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

 

Переменная счетчик, выражения нач_знач и ко_знач должны быть целого типа. Количество повторений инструкций цикла можно вычислить по формуле (кон_знач — нач_знач + l).

Примеры:

Если между begin И end находится только одна инструкция, то слова begin и end можно не писать.

Циклы в Delphi: Инструкция for

 

Алгоритм, соответствующий инструкции for, представлен на рис. 2.13. Обратите внимание, что если начальное значение счетчика больше конечного значения, то последовательность операторов между begin и end не будет выполнена ни разу, Кроме того, после каждого выполнения инструкций тела цикла счетчик циклов увеличивается автоматически. Переменную-счетчик можно использовать внутри цикла (но ни в коем случае не изменять). Например, в результате выполнения следующих инструкций: 

 

 

переменная tabl будет содержать изображения таблицы квадратов чисел. Рассмотрим программу, которая вычисляет сумму первых 10 элементов ряда: 1 + + 1/3 + ... (значение i'-го элемента ряда связано с его номером формулой 1/0- Диалоговое окно программы должно содержать, по крайней мере, два компонента: поле метки (Labeii) и командную кнопку(Button1), Вычисление суммы ряда и вывод результата выполняет процедура обработки события onclick, текст которой приведен ниже. После вычисления очередного элемента ряда процедура выводит в поле Labeii номер элемента и его значение в поле метки формы, предназначенное для вывода результата. 

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

 

dle

Помоги проекту! Расскажи друзьям об этом сайте: