Умова виконання циклу

Ініціалізуючий вираз

Цикл for

Цикли

Дія циклу полягає в послідовному повторенні певної частини нашої програми певну кількість раз. Повторення продовжеється доти, доки виконується відповідна умова. Коли значення виразу, що задає умову, стає хибним, виконання циклу припиняється, а керування передається оператору, що розміщується безпосередньо після циклу.

В С++ існує три види циклів: for, while, do.

 

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

Цикл for організує виконання фрагменту програми фіксоване число раз. Як правило (хоч і не завжди), цей тип циклу використовується тоді, коли число разів повторення фрагменту відоме зарані.

Далі приведена програма, що виводить на екран квадрати цілих чисел від 0 до 14.

 

#include <iostream>

using namespace std;

int main()

{int j;

for (j=0;j<15;j++)

cout <<j*j<<” “;

cout<<endl;

return 0;

}

 

Яким чином працює ця програма? Оператор for управляє циклом. Він складається з ключового слова for, після якого йдуть круглі дужки, що містять три вирази, розділені крапкою з комою ;

for (j=0;j<15;j++)

Перше з трьох виразів називають ініціалізуючим, друге – умовою перевірки, третє – інкрементуючим.

Ці три вирази, як правило (а не завжди) містять одну змінну, яку називають лічильником циклу. В попередній програмі лічильником циклу є змінна j. Вона визначається до того, як почне виконуватися тіло циклу.

Під тілом циклу розуміють ту частину коду, яка періодично виконується в циклі. В нашому прикладі тіло циклу складається з одного оператора:

cout <<j*j<<” “;

Звернемо увагу на те, що після оператора for відсутня крапка з комою. Це пояснюється тим, що насправді оператор for разом з тілом циклу становить один оператор. Якщо поставити після заголовку оператора for знак ; то компілятор сприйме це як відсутність тіла циклу і результат роботи програми буде відрізнятися від задуманого.

Розглянемо, яким способом три вирази, що стоять в круглих дужках, впливають на роботу циклу.

 

Ініціалізуючий вираз обчислюється лише один раз – на початку виконання циклу. Обчислене значення ініціалізує лічильник циклу. В нашому прикладі

for (j=0;j<15;j++)

змінна j одержує початкове значення 0.

 

Як правило, умова виконання циклу містить в собі операцію відношення. Умова перевіряється кожен раз перед виконанням тіла циклу і визначає, потрібно виконувати цикл ще раз чи ні. Якщо умова виконується, то відповідний вираз істинний і тіло циклу виконується ще раз. В іншому випадку управління передається тому оператору, який записаний після циклу.. В нашій програмі після завершення циклу управління передається оператору

cout<<endl;