Повторяющиеся вычисления (операторы цикла)
С помощью условных операторов и операторов присваивания теоретически можно реализовать сколь угодно сложный алгоритм. Однако на практике при необходимости организовать обработку тысяч элементов массива (например, присвоить каждому элементу начальное значение) вручную набирать тысячу операторов присваивания крайне тяжело.
Поэтому в языках программирования имеются средства для организации повторных вычислений, называемые операторами цикла. Они бывают двух видов: с фиксированным числом повторений и условные операторы цикла.
Каждый оператор цикла состоит из заголовка цикла, определяющего число повторений, и тела цикла — повторяемого оператора или блока операторов.
Первый вид оператора цикла
При решении задачи примерно в половине случаев заранее известно, сколько раз понадобится выполнить тело цикла. Так бывает, как правило, при обработке массивов, размер которых всегда или известен заранее, или легко определяется.
Заголовок такого оператора состоит из трех частей — инициализации переменной-счетчика или параметра цикла (присваивания ей начального значения), определения конечного значения счетчика, по достижении которого тело цикла надо выполнить в последний раз, и приращения счетчика, определяющего, на сколько будет меняться значение счетчика после каждого выполнения тела цикла.
Синтаксис оператора цикла
Бейсик | FOR счетчик = начальное_значение ТО конечное_значение STEP приращение тело цикла группа операторов NEXT Если приращение не указывать, то считается, что оно равно 1 |
Паскаль | for счетчик := начальное_значение to конечное_значение do оператор или блок операторов; Приращение всегда равно 1 |
Си++ | for( счетчик = начальное_значение; условие_завершения; счетчик = счетчик + приращение) оператор или блок операторов; |
Примеры инициализации тысячи элементов массива а.
Бейсик:
FOR I = 1 ТО 1000
А(1) = О
NEXT
Паскаль:
for i := 1 to 1000 do
a[i] := 0;
Си++:
for( i = 0; i < 1000; i = i + 1 )
a[i] = 0;
В последнем примере счетчик будет принимать значения от 0 до 999, потому что нумерация элементов массива в Си++ начинается с нуля.
Второй вид оператора цикла
Не менее часто встречаются ситуации, когда число повторений заранее неизвестно — надо выполнять цикл, пока не произойдет некоторое событие (пользователь нажмет на кнопку, точность вычислений уложится в заданный порог и т. д.). В таких ситуациях заголовок цикла упрощается. В нем указывается только условие (логическое выражение) — пока его значение равно true, цикл будет выполняться.
Дата добавления: 2016-09-26; просмотров: 1830;