- •План:
- •Цикл з передумовою
- •Приклад1:
- •Приклад 2
- •Цикл з післяумовою
- •Приклад 3
- •Цикл з параметром
- •Алгоритм виконання циклу for представлений на блок-схемі
- •За допомогою циклу for знаходження N! можна організувати таким чином:
- •Деяких елементів в операторові for може не бути, проте крапки, що розділяють їх,
- •Ще один варіант обчислення N!. На місці тіла циклу знаходиться порожній оператор, а
- •Приклад обчислення суми елементів гармонійного ряду, що перевищують задану величину ε:
- •Оператор continue
- •Оператор goto
- •Приклад 4
- •Одна з ситуацій, в яких використання goto є виправданим, — це необхідність «дострокового»
- •При використанні оператора безумовного переходу необхідно враховувати наступні обмеження:
Ще один варіант обчислення N!. На місці тіла циклу знаходиться порожній оператор, а обчислювальна частина внесена у вираз 3.
for(F=1, i=1; i<=N;F=F*i, i++);
Цей же оператор можна записати в наступній формі:
for(F=1, i=1; i<=N;F*=i++);
У мові Сі++ оператор for є досить універсальним засобом для організації циклів.
Приклад обчислення суми елементів гармонійного ряду, що перевищують задану величину ε:
for(n=1, S=0;1.0/n>eps && n<INT_MAX;n++) S+=1.0/n;
Це ж саме завдання з порожнім тілом циклу:
for(n=1, S=0;1.0/n>eps && n<INT_MAX;S+=1.0/n++);
Фрагмент програми на Сі++ містить два вкладені цикли for. В циклах запрограмоване отримання на екрані таблиці множення.
for(x=2;х<=9;х++)
for(y=2;y<=9;y++)
cout<<"\n"<<x<<"*"<<y<<"="<<x*y;
На екрані буде отриманий наступний результат:
2*2=4
2*3=6
. . .
9*8=72
9*9=81
Оператор continue
Наступний фрагмент програми забезпечує вивід на екран усіх парних чисел в діапазоні від 1 до 100.
for(i=l;i<=100;i++)
{if(i%2) continue; cout<<"\t"<<i;}
Оператор goto
Формат оператора : goto мітка;
Мітка є ідентифікатором з
подальшою двокрапкою, ставиться перед оператором, що позначається
Приклад 4
Одна з ситуацій, в яких використання goto є виправданим, — це необхідність «дострокового» виходу з вкладеного циклу.
Ось приклад такої ситуації : for(...)
{while (...)
{for(...)
{... goto exit ...}
}
}
exit: cout<<"Bихід з циклу";
При використанні оператора безумовного переходу необхідно враховувати наступні обмеження:
•не можна входити всередину блоку ззовні;
•не можна входити всередину умовного оператора (if ...else...);
•не можна входити всередину перемикача;
•не можна входити всередину циклу.