КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
РОЗДІЛ 6. ОРГАНІЗАЦІЯ ЦИКЛІВ
Цикли використовуються для обчислень, які повторюються багато разів. Будь-який цикл складається з тіла циклу, тобто тих операторів, які виконуються декілька разів, початкових установок, модифікації параметру циклу та перевірки умови продовження виконання циклу. Цикли бувають двох типів: арифметичний (оператор for) та ітераційний (while, do…while). У арифметичному циклі заздалегідь відома кількість ітерацій, у ітераційному – невідома. Ітераційні цикли бувають з передумовою (while) та післяумовою (do…while). Різниця між ними в тому, що тіло циклу з післяумовою завжди виконується хоча б один раз, після чого перевіряється, чи треба його виконувати ще раз. Перевірка виконання циклу з передумовою робиться до тіла циклу, тому можливо, що він не виконається жодного разу.
Організація арифметичних циклів з використанням оператору for
Синтаксис арифметичного циклу for:
for ([початковий вираз]; [контрольний вираз]; [лічильник]) { блок з одного або більш операторів; }
Якщо в блоці один оператор – фігурні дужки можна не ставити. Початковий вираз визначається один раз. Якщо контрольний вираз не дорівнює 0, то він є істинним і виконується блок. Цикл припиняє роботу, якщо контрольний вираз дорівнює 0. Вираз лічильник обчислюється при кожному повторенні циклу. Приклади:
for(i = 10; i ! = 0; i--) або for(i = 10; i; i--)
char i; for(i = '1'; i <= 'Z'; i++)
for(; ;) //- порожньо - вічний цикл { cout << "12"; }
int i = 1; for(;i <= 100;) { cout << i; i++; }
int i; for(i = 1; i <= 10; i++) cout << i << '\n';
Результат:
…
Вкладені цикли:
for(i = 1; i <= 3; i++) { for(j = 1; j <= 3; j++) { cout << j << '\n'; } //У цьому фрагменті фігурні дужки } //можна не ставити
Результат:
Додатково використовуються оператори:
break; continue;
Оператор break завершує цикл достроково.
Приклад:
#include <iostream> using namespace std;
void main() { int num; char i; cout << "Виведення 20 чисел \n"; for( num = 1; num <= 20; num++ ) { cout << num << '\n'; cout << "Будете виводити наступне число (Y/N)?"; cin >> i; if((i == 'N') || (i == 'n')) break; } } Оператор continue повертає управління до початку циклу. Приклад: Тільки маленькі англійські літери при введенні перетворяться у великі та будуть виводитись на екран.
#include <iostream> using namespace std;
void main() { char m; int i; for(i = 1; i <= 5; i++) { cin >> m; if(( m < 'a') || ( m > 'z')) continue; m-= 32; cout << m << '\n'; } }
Організація ітераційних циклів з передумовою while та післяумовою do...while
Синтаксис циклу з передумовою while:
while ( <вираз>) {
|