Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Циклічні алгоритми

У деяких алгоритмах передбачається можливість багаторазового виконання деякої серії команд. Такі алгоритми називають циклічними (цикл, структура повторення), а їх повторювану частину - тілом циклу.

Для побудови циклічного алгоритму необхідно:

§ визначити всі дії, які необхідно виконати до входу в цикл, тобто провести підготовку циклу;

§ визначити всі операції, які ввійдуть до циклу;

§ скласти умову виходу з циклу.

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

Прості цикли з параметром. Якщо в процесі перетворення інформації є змінна, значення якої змінюється за відомим правилом, або відомі межі її зміни, то можна визначити кількість повторень ітерацій циклу та організувати вихід із циклічного процесу. Такі цикли називають циклами з параметром (арифметичний цикл), а відповідну змінну - параметром циклу.

Графічне представленням циклу з параметром подане на рис. 10.

Рис. 10. Блок-схема циклу з параметром

Як параметр циклу можна використовувати

- змінну, яка належить до оброблюваної інформації;

- індексну змінну, якщо оброблювана інформація є массивом;

- коефіцієнти, що змінюються за законом арифметичної прогресії.

Наприклад, обчислити значення функції для х = 1; 1.1; 1.2,..., 2.

Тут за параметр циклу можна обрати змінну х, яка змінюється від х 1 = 1 до х 2 = 2 з кроком d = 0,1 (рис. 11).

Рис. 11. Приклад простого циклічного процесу

 

Ітераційні цикли. Розв’язання систем лінійних алгебраїчних рівнянь з десятками та сотнями невідомих, пошук коренів алгебраїчних рівнянь високих степенів та коренів трансцендентних рівнянь, розв’язання систем диференційних рівнянь, інтерполяція та екстраполяція функцій, обчислення значень функції за допомогою рядів, інтегрування тощо — усі ці задачі розв’язуються за допомогою циклічних алгоритмів, що реалізують циклічні ітераційні процеси, для яких заздалегідь неможливо визначити кількість повторень циклу. Тому необхідно сформулювати умову виходу з циклу з використанням особливостей самої задачі.

Розрізняють два типи ітераційних циклів – з передумовою і з постумовою.

У циклі з передумовою така умова перевіряється перед кожною ітерацією цикла (рис.12 а), у циклі з постумовою – після ітерації цикла (рис. 12 б).

а) б)

Рис.12 Блок-схеми ітераційного циклу

Наприклад, о бчислити з точністю до e значення функції y(x)= еx, використовуючи її розкладання у ряд: .

Будь-яку функцію можна наближено представити у вигляді деякого ряду. Підставивши значення аргумента, знайдемо часткову суму ряду і вважатимемо її значенням функції від того самого аргумента з певною точністю наближення. Чим більша точність нам потрібна, тим більший відрізок ряду треба буде обчислювати.

Поточний елемент ряда позначимо через k, поточне значення суми - через s, доданка суми - через p, точність наближення - через ε, коефіцієнт пропорційності .

Блок-схема даного алгоритму представлена на рис. 13

 

Рис. 13. Блок-схема алгоритму обчислення суми ряду із заданною точністю

Складні циклічні процеси. З алгоритмічних процесів згаданих типів можна будувати складні циклічні процеси із вкладеними циклами. У цьому випадку виділяються внутрішній і зовнішній цикли. Для кожної зміни значення параметра у зовнішньому циклі відбувається багаторазове виконання дій у внутрішньому циклі, який називається вкладеним. Кількість вкладених циклів не обмежується.

Треба зауважити, що як внутрішній, так і зовнішній цикли можуть бути параметричними та ітераційними, кожен, у свою чергу, — бути складним. Але вони повинні цілком вкладатися один в одний і ніколи не перетинатися частково.

Комбінуючи базові алгоритмічні конструкції між собою, можна будувати алгоритми будь-якої складності. Цих структур достатньо для створення найскладнішого алгоритму.

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

Для створення блок-схем зручно користуватися графічним редактором Microsoft Office Visio.

 

<== предыдущая лекция | следующая лекция ==>
Розгалужені алгоритми | На неспециализированном оборудовании
Поделиться с друзьями:


Дата добавления: 2014-01-13; Просмотров: 1709; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.