Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информат.Лек.фр.doc
Скачиваний:
13
Добавлен:
10.11.2019
Размер:
5.51 Mб
Скачать

Лекция 13

13. Операторы циклов. Массивы

Vocabulaire

оператор цикла – opérateur cyclique [опэратор сиклик]

параметрический цикл for – cycle paramètrique [сикль парамэтрик] for

оператор цикла с предусловием while – opérateur de cycle préfixé while [опэратор дьо сикль прэфиксэ] while

оператор цикла с послеусловием dowhile – opérateur dе cycle postfixé dowhile [опэратор дьо сикль постфиксэ] dowhile

инициализация цикла – initialisation du cycle [инисиализасъён дю сикль]

проверка условия цикла – vérification de la condition du cycle [вэрификасъён дьо ля кондисъён дю сикль]

продвижение, прогрессия – progression (f ) [прогрэсъён]

продвижение цикла – progression du cycle [прогрэсъён дю сикль]

спецификация – spécification (f ) [спэсификасъён]

синтаксис – syntaxe (f ) [сэнтакс]

заголовок – tête (f ) [тэт]

заголовок цикла – tête du cycle [тэт дю сикль]

тело – corps (m) [корп]

тело цикла – corps du cycle [корп дю сикль]

выполнение – exécution (f ) [экзэкюсъён]

выполнение цикла – exécution du cycle [экзэкюсъён дю сикль]

начальное значение – valeur initiale [валёр инисъяль]

конечное значение – valeur initiale [валёр инисъяль]

операция инкремент – opération incrément [опэрасъён энкрэман]

операция декремент – opération décrément [опэрасъён дэкрэман]

запятая – virgule (f ) [виргюль]

операция запятая – opération virgule [опэрасъён виргюль]

массив – tableau (m) [таблё]

одномерный массив – tableau á une dimension [таблё а иун димансъён ], tableau linéaire [таблё линеэр]

двумерный массив – tableau á deux dimensions [таблё а дё димансъён ]

многомерный массив – tableau multidimensionnel [таблё мюльтидимансъёнэль],

tableau á plusieurs dimensions [таблё а плюзъёр димансъён ]

13.1. Операторы циклов

Оператор цикла – это инструкция, предписывающая циклическую операцию.

В С++ используется три вида операторов цикла:

  • for (параметрический, с предусловием),

  • while (с предусловием),

  • dowhile (с послеусловием).

13.1.1. Параметрический оператор цикла for

Этот оператор представляет собой компактную форму записи цикла с предусловием. В заголовке цикла собраны три операции:

инициализация (подготовка) цикла,

проверка условия выполнения цикла,

продвижение цикла.

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

for (спецификация 1; спецификация 2; спецификация 3)

оператщр;

Верхняя строка оператора называется заголовком цикла. Она содержит три спецификации. Спецификация 1 – это запись, реализующая инициализацию параметра цикла. Спецификация 2 отображает условие выполнения цикла. Спецификация 3 – предписывает продвижение цикла.

Вторая строка представляет собой тело цикла в виде только одного оператора (простого или составного). Пример записи оператора цикла, реализующего фрагмент блок – схемы, представленный ниже.

Этот оператор реализует циклическую операцию по вычислению функции у = ах2 при изменении аргумента x от начального значения x0 до конечного значения xk с шагом h.

В заголовке цикла первая спецификация представляет собой инициализацию параметра цикла х (x = x0;), вторая спецификация отображает условие выполнения цикла ( x <= xk; ) и третья спецификация предписывает продвижение цикла, то есть увеличение параметра цикла х на величину h (x += h). Следует обратить внимание на то, что первые две спецификации завершаются символом точка с запятой, а третья – нет. В этом цикле оператор в теле цикла выполняется, пока выполняется условие цикла. Цикл завершает свою работу с момента невыполнения его условия. В заголовке цикла сведены три операции: инициализация, условие выполнения цикла и продвижение цикла. Тело цикла представлено только одним оператором y = a*x*x;

for (x = x0; x <= xk; x += h) // Заголовок цикла y = a*x*x; // Тело цикла

Цикл for обладает высокой универсальностью и позволяет использовать различные модификации заголовка:

– для продвижения цикла можно использовать операции инкремент и декремент:

for (n=10; n < 25; n++) или for (n=10; n > 2; n – –);

– в качестве параметра цикла можно использовать как целые, так и вещественные (дробные) числа, а также данные символьного типа:

for (n=8; n < 30; n+=2),

for (x=1.7; x < 7.5; x+=0.5)

for (ch=`a`; ch < `z`; ch++);

  • в качестве шага допускается использовать как целые, так и вещественные числа:

for (x=15.2; x < 25.3; x+=0.1);

  • во всех трех спецификациях можно использовать выражения:

for (x=2*a; x < 8*a + c; x+=h/2);

  • в условие цикла можно записывать выражения, не содержащие параметр цикла:

у = - 3;

for (х=1; у <= 25; х+=0.3)

у = а*х*х;

  • можно опускать первую или (и) третью спецификацию:

for (х = 5; х < 25; ) x = 5;

{ for ( x < 25; )

y = a*x*x; {

x + = h; y = a*x*x;

} x + = h;

}

Последовательность операций при выполнении цикла следующая:

– инициализация параметра цикла (только один раз до начала цикла);

  • проверка условия выполнения цикла (перед каждым выполнением тела цикла);

  • продвижение цикла (после каждого выполнения тела цикла).

Эта последовательность строго соблюдается.