Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мет_1 часть_укр.doc
Скачиваний:
2
Добавлен:
09.11.2019
Размер:
1.41 Mб
Скачать

3.1.3. Оператори циклу

У С/С++ є три варіанти оператора циклу: цикл із передумовою, цикл із постумовою і цикл із параметром.

Цикл із передумовою, записується за схемою:

while (умова) вираз

При кожному повторенні циклу обчислюється умова і якщо ії значення не дорівнює нулю, виконуються вираз – тіло циклу. Як приклад, розглянемо підрахунок суми елементів деякого масиву a[n] з n елементів (нумерація елементів масиву починається з 0):

int s=0, i=0;

while (i<n) {s+=a[i]; i++;}

Цикл із постумовою записується за схемою:

do оператори while (вираз-умова)

Вираз-умова обчислюється й перевіряється після кожного повторення оператора – тіла циклу. Цикл повторюється, поки умова виконується. Обчислення суми елементів масиву a[n]:

int s=0, i=0;

do {s+=a[i]; i++;} while (i<n);

Цикл із параметром записується за схемою:

for (E1; E2; E3) оператор

Спочатку обчислюється вираз E1, що виконує підготовку до початку циклу. Потім обчислюється вираз E2 і, якщо він дорівнює нулю, виконується перехід до наступного оператора програми (вихід із циклу). Якщо E2 не дорівнює нулю, виконується тіло циклу (оператор). Нарешті, обчислюється вираз E3 і знову відбувається повернення до обчислення Е2 з наступним повторенням кроків.

Щоб обчислити суму елементів деякого масиву з n елементів, можна використати наступний оператор:

for (int s=0, i=0; i<n; i++) s+=a[i];

Для переривання повторень оператора циклу будь-якого типу в тілі циклу використовують оператор break. Перехід до наступного повторення циклу з будь-якого місця тіла циклу забезпечує оператор continue.

3.1.4. Приклад. Побудова геометричної фігури

Нехай потрібно побудувати в текстовому режимі компілятора геометричну фігуру – трикутник, яка на екрані має вигляд:

*

* *

* *

* *

* *

* * * * *

Для цього будемо використовувати умовний оператор і оператор циклу, а також маніпулятори:

setw(int) – установлює ширину поля виведення (кількість позицій під значення змінної) з вирівнюванням по правому краю;

setfill('x') – задає символ x для заповнення вільних позицій ширини поля виводу (за умовчанням виводиться пробіл).

Для використання маніпуляторів необхідно підключити заголовний файл iomanip.h.

Виконання головної функції main починається з ініціалізації змінної n (кількість рядків). Потім у перший рядок виводиться символ «*» (вершина трикутника). За допомогою циклу for виконується виведення наступних рядків (від 2 до n). В усі рядки, крім останнього, виводяться дві зірочки «*» для лівої й правої сторони трикутника . Останній рядок заповнюється зірочками від першої позиції до позиції n. Алгоритм головної функції подається у вигляді наступної блок-схеми (мал..3.1):

Мал. 3.1. Блок-схема функції main()побудови трикутника

Відповідно до цієї блок-схеми складаємо програму:

#include <iostream.h>

#include <iomanip.h>

void main(){

int n=6;

cout<<'*'<<endl; //Виведення 1-ого рядку

for(int k=2; k<=n; k++) {

cout<<'*'; //Виведення лівого символу

if(k!=n)

cout << setw(k-1) << '*'; //Виведення правого символу

else

cout<<setw(n)<<setfill('*'); //Останній рядок

cout<<endl;

}

}