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

Операция «Запятая»

Операция «Запятая» увеличивает гибкость цикла for, позволяя включать в его спецификации несколько инициализирующих и корректирующих операций. Это очень удобно при вычислении функции с несколькими одновременно изменяющимися аргументами.

Пример:

Вычислить значения функции z = ax + cy , если х изменяется от хн до хк с шагом hx одновременно с у, который изменяется от ун с шагом hy . Значения коэффициентов а и с заданы.

Такое вычисление можно реализовать записью одного оператора цикла:

for ( x = хн, у = ун; x <= хк; x += hx , y += hy )

z = a*x + c*y;

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

Разрешается в заголовке цикла for описывать новую переменную, например,

for ( float x = хн,; x <= хк; x += hx )

    1. Оператор цикла while

Синтаксис этого оператора имеет следующий вид:

while (условие)

оператор;


Оператор while обеспечивает выполнение циклической операции до тех пор, пока выполняется условие. Прекращение выполнения условия является основанием для прекращения циклической операции. Тело цикла может быть представлено одним простым или составным оператором. Этот цикл с предусловием. Это означает, что сначала проверяется условие выполнения цикла, а потом только принимается решение о выполнении цикла. Ниже иллюстрируется фрагмент программы с использованием оператора цикла while, записанной в соответствии с приведенным фрагментом блок – схемы.

x = 1;

while ( x < n )

{

S + = a*x;

x ++;

}

Более изящной является запись

x = 0;

while ( x ++ < n )

S + = a*x;

В этой записи операция увеличения переменной х на единицу, выполняемая на каждом шаге, переносится в заголовок цикла. При такой записи сначала совершается операция инкремент x ++ , а затем проверяется условие ( x < n ).

    1. Оператор цикла do . . . While

Этот цикл с послеусловием. Синтаксис оператора следующий:

do оператор;

while ( условие );


В отличие от оператора цикла while этот оператор позволяет сначала выполнять оператор, представляющий собой тело цикла, а затем проверяет условие. При таком положении тело цикла может выполниться один раз даже в случае, когда условие не выполняется. Это обнаруживается уже после выполнения тела цикла.

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

х = хн ;

do

{

y = a*x;

x ++;

}

while ( x <= xк );

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