Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Тема: Реалізація циклічного обчислювального процесу

Читайте также:
  1. NB! Тема:Антиаритмические препараты
  2. XVII. Реалізація права вступників на вибір місця навчання
  3. Гігієнічна оцінка навчального процесу в закріпленому класі
  4. Завдання процесу маркетингового менеджменту
  5. Загальна психологічна характеристика судового процесу при розгляді кримінальних справ.
  6. Загальна схема технологічного процесу обробки інформації
  7. Залежність характера патологічного процесу від положення середостіння і особливостей затемнення в легенях на рентгенограмах.

Лабораторна робота № 5_6_7

Мета роботи: Вивчення алгоритмів циклічного обчислювального процесу та засобів їх реалізації.

План

1. Циклічний процес з параметром

2. Циклічний процес з передумовою

3. Циклічний процес з післяумовою

Циклічні обчислення

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

Циклічний процес з параметром:

Синтаксис оператора for такий:

 

for (вираз_1; вираз_2; вираз_3) оператор;

 

Вираз 1 встановлює початкові значення змінних циклу, його називають виразом ініціалізації. Вираз 2 задає умову виконання циклу, його називають виразом умови. Вираз 3 виконує зміну значень змінних циклу, його називають виразом ітерації. Оператор – довільний оператор мови, в тому числі блок, який задає дії, що мають виконуватись кількаразово, його називають тілом циклу.

Оператор працює наступним чином:

1) обчислюється вираз 1, який використовується для надання змінним циклу початкових значень;

2) обчислюється значення виразу 2, тобто перевіряється умова виконання циклу;

3) якщо значення виразу 2 дорівнює нулю (умова хибна), то виконання циклу завершується, управління передається оператору, наступному за for;

4) якщо значення виразу 2 ненульове (умова істинна), то виконується оператор тіла циклу;

5) обчислюється вираз 3, який застосовується для зміни значень параметрів циклу;

6) відбувається безумовний перехід до кроку 2.

Блок – схема роботи оператора for наведена на мал. 1. На цьому ж малюнку наведена блок – схема виконання такої програми:

 

#include <iostream>

using namespace std;

int main() {

for (int i = 1; i <= 10; i++)

cout << "i = " << i << endl;

}

 

Параметром циклу є змінна і, значення якої змінюються при виконанні оператора циклу і виводяться на екран. Початковим значенням змінної є одиниця (задається виразом 1), останнім – десять (задається виразом 2). На кожному кроці виконання оператора for (ще кажуть, при кожному проході тіла циклу, на кожній ітерації) значення змінної збільшується на одиницю (задається виразом 3).

Змінна і оголошена всередині оператора for. Такі змінні є локальними змінними циклу, їх можна використовувати тільки в межах даного оператора for.

Початкову частину оператора циклу for (вираз_1; вираз_2; вираз_3) називають заголовком циклу. Після заголовка знак; не ставлять, крім випадків порожнього оператора. Всередині заголовка знак; застосовують для відокремлення між собою трьох складових виразів. Кожен з виразів, або всі вони, можуть бути відсутні, але знаки; ставити обов’язково. Тобто, попередню програму можна переписати так:

#include <iostream>

using namespace std;

int main(){

int i;

i = 1;

for (; i <= 10;) {

cout << "i = " << i << endl;

i++;

}

}

 

Мал. 1 Блок – схема роботи і приклад використання оператора for

 

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

#include <iostream>

using namespace std;

int main(){

int i;

i = 1;

for (;;) {

cout << "i = " << i << endl;

if (++i > 10)

break;

}

}

 

Приклад програми: знаходження суми ряду 1/1+1/2+1/3+… Суму будемо знаходити двома способами: з заданою точністю і підсумовуванням певної кількості елементів ряду.

 

#include <iostream>

using namespace std;

int main(){

double s, t, e;

int i;

s = 0;

e = 1e-5;

i = 1;

for (t = 1/ i; t >= e; t = 1. / i) {

s += t;

i++;

}

cout << s << endl;

s = 0;

t = 1;

for (i = 1; i <= 100000; i++) {

t = 1. / i;

s += t;

}

cout << s << endl;

}

 

Недоліком цієї програми можна вважати ініціалізацію змінних в різних місцях програми, так само, як і збільшення параметрів циклу. В таких випадках зручно використовувати операцію «кома». Вона має найнижчий пріоритет серед операцій мови С++ і призначена для об’єднання декількох послідовно записаних виразів в один загальний вираз. Вирази, об’єднані з допомогою операції кома, виконуються зліва на право, значенням загального виразу стає значення самого правого під виразу.


Дата добавления: 2015-07-11; просмотров: 156 | Нарушение авторских прав


Читайте в этой же книге: Ход позвоночной артерии, ее отделы. | Билет 75 | Венозный угол Пирогова | Возможные осложнения. | Подключичная артерия и ее ветви. | Плечевое сплетение. | Билет 78 | Оперативный доступ к подключичной артерии по Петровскому | Билет 79 | Техника выполнения трахеостомии. |
<== предыдущая страница | следующая страница ==>
Собирать набор специальных инструментов для трахеостомии| Знайдемо значення факторіалу з допомогою оператора for.

mybiblioteka.su - 2015-2024 год. (0.008 сек.)