Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



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

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

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;

}

}

3.2. Постановка задачі

Скласти програму, що дозволяє вивести на екран геометричну фігуру, яка складається з символів зірочка *. Завдання містяться в наступних варіантах.

3.3. Варіанти

Завдання Завдання
   
   
     
   
   
   
   
   
   
   
   
   
     

3.4. Методичні вказівки

1. При складанні програм використати оператори циклу й умовні оператори.

2. Побудову фігури виконати по рядках у текстовому режимі.

3. Для виведення символів на екран використати операцію cout, а для позиціонування символу й заповнення поля виводу – маніпулятори setw і setfill.

3.5. Зміст звіту

1. Постановка задачі.

2. Варіант завдання.

3. Блок-схема алгоритму.

4. Код програми.

5. Скріншот вікна з результатами.

6. Висновки.


4. Лабораторна робота 3.
«Обчислення ряду.
Форматне введення-виведення даних» (2 год.)

Ціль: Одержання навичок у використанні операторів С++, а також функції форматного введення-виведення; знайомство з ітераційними процесами.

4.1. Теоретичні відомості

4.1.1. Поняття ряду. Ітераційний процес

Ряд – це сума елементів виду:

у якій значення кожного елемента однозначно визначається його номером . Ряд називається збіжним, якщо сума має певне скінчене значення. Звичайно ряд описується за допомогою формули для загального члена ряду. Наприклад, сума спадної геометричної прогресії описується загальним членом і сума членів прогресії дорівнює .

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

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

У наближених обчисленнях спадного ряду враховується скінчене число членів ряду. Їх кількість визначається на основі одного з наступних критеріїв:

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

2. При обчисленні суми спадного ряду враховуються члени, що перевищують задане значення , наступні члени, які менше , відкидаються.





Дата публикования: 2015-04-07; Прочитано: 564 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...