- •Пояснювальна записка
- •Витяг з робочої програми
- •Перелік посилань
- •Лекція №1 (2 год)
- •Зміст лекції
- •1 Алгоритми та їх властивості
- •2 Моделі алгоритмів
- •Лекція №2,3 (4 год)
- •1 Класи рекурсивних функцій
- •2 Встановлення рекурсивності деяких відомих функцій
- •3 Властивості рекурсивних та примітивно-рекурсивних множин.
- •4 Властивості рекурсивно-зліченних функцій
- •Лекція №4 (2 год.)
- •Зміст лекції
- •1 Машина Поста
- •2 Машина Тьюринга
- •Лекція №5 (2 год.)
- •Зміст лекції
- •1 Теза Чорча
- •2 Теорема про співпадання класів частково-рекурсивних і обчислювальних функцій за Тьюрингом
- •Лекція №6 (2 год.)
- •Зміст лекції
- •1 Поняття нормальних алгоритмів Маркова
- •2 Правила виконання нам
- •3 Композиції нормальних алгоритмів Маркова
- •Лекція №7 (2 год.)
- •1 Поняття алгоритмічної системи
- •2 Операторні алгоритми Ван-Хао
- •3 Операторні алгоритми Ляпунова
- •Лекція №8 (2 год.)
- •Зміст лекції
- •1 Еквівалентність як метод формальних перетворень
- •2 Еквівалентність операторних алгоритмів
- •3 Формальні перетворення логічних схем
- •Лекція № 9,10 (4 год.)
- •Зміст лекції
- •1 Псевдокоди
- •3 Графічне представлення алгоритмів згідно з вимогами стандартів єспд
- •3 Правила виконання схем алгоритмів
- •4 Схема даних, схеми програм, схема роботи системи
- •Лекція №11 (2 год.)
- •Зміст лекції
- •1 Лінійна та розгалужена структури алгоритмів
- •2 Структурний підхід до побудови схем алгоритмів
- •Лекція №12,13 (4 год.)
- •Зміст лекції
- •1 Поняття сортування
- •2 Сортування простим вибором
- •3 Сортування методом бульбашки
- •4 Швидке сортування
- •Лекція №14 (2 год)
- •Зміст лекції
- •1 Відокремлення коренів
- •2 Метод поділу відрізка навпіл
- •3 Метод хорд
- •4 Метод дотичних (Ньютона)
- •Лекція №15 (2 год)
- •Зміст лекції
- •1 Математична постановка задачі інтерполяції
- •2 Інтерполяційний многочлен Лагранжа
- •3 Точкова апроксимація
- •Лекція №16 (2 год)
- •Зміст лекції
- •1 Формула прямокутників
- •2 Формула трапецій
- •3 Формула парабол (Сімпсона)
- •Лекція №17 (2 год)
- •Зміст лекції
- •1 Задача Коші для рівняння Лапласа
- •2 Різницеві методи розв’язування диференціальних рівнянь частинних похідних
- •Лекція №18 (2 год)
- •Зміст лекції
- •1 Метод найменших квадратів (мнк)
- •2 Моделі множинної регресії
Лекція №11 (2 год.)
ТЕМА:Основні структури алгоритмів
МЕТА:
навчальна: ознайомлення з основними структурами алгоритмів;
розвиваюча: розвивати поняття алгоритму;
виховна: виховувати інтерес до комп’ютерних наук
ОБЛАДНАННЯ: дошка
ПЛАН
1 Лінійна та розгалужена структури алгоритмів
2 Структурний підхід до побудови схем алгоритмів
Зміст лекції
1 Лінійна та розгалужена структури алгоритмів
Основні структури алгоритмів – це обмежений набір блоків і стандартних способів їх з’єднання для виконання типових послідовностей дій. Використання кількох основних структур дає можливість будувати різноманітні алгоритми.
До основних структур алгоритмів належать:
–
лінійна
або послідовна без будь-яких розгалужень
конфігурація алгоритму, що нагадує
форму ланцюжка
– розгалужена конфігурація алгоритму, що містить в собі як послідовності, так і розпаралелення послідовностей. Використовується, коли залежно від умови потрібно виконати ту чи іншу дію (рис. а), здійснити обхід, якщо одна вітка не містить жодних дій (рис. б), здійснити множинний вибір, коли умова має більш як три можливі варіанти (рис. в);
– циклічна, що використовується при необхідності виконувати деякі дії кілька разів.
Циклічний алгоритм містить один або кілька циклів. Цикл - це багато разів повторювана частина алгоритму. Цикл, що не містить усередині себе інших циклів, називають простим. Якщо він містить всередині себе інші цикли або розгалуження, то цикл називають складним або вкладеним. Будь-який цикл характеризується однією або кількома змінними, званими параметрами циклу, від аналізу значень яких залежить виконання циклу. Параметр циклу - змінна, що приймає при кожному входженні в цикл нового значення.
Можливе виконання циклу До, циклу Поки, циклу за параметром.
Особливістю всіх наведених структур є те, що вони мають один вхід і один вихід, тому їх можна поєднувати один з одним у будь-якій послідовності. Зокрема, кожна структура може містити будь-яку іншу структуру в якості одного із блоків.
2 Структурний підхід до побудови схем алгоритмів
Досвід практичної алгоритмізації привів до формування особливої методики структурної організації алгоритмів, використання якої зменшує ймовірність помилок у процесі розробки і запису алгоритмів, спрощує їх розуміння і модифікацію.
Цю методику алгоритмізації називають структурним підходом.
При структурному підході до конструювання алгоритмів їх ніби “збирають” із трьох основних (базових) структур.
УЗАГАЛЬНЕННЯ ВИВЧЕНОГО МАТЕРІАЛУ: лінійна, розгалужена форма представлення, графічне представлення лінійної, розгалужено схем, та схем з циклами
ДОМАШНЄ ЗАВДАННЯ: [9, 32-36]
ВИКЛАДАЧ – В.А. Данилова
Лекція №12,13 (4 год.)
ТЕМА: Алгоритми сортування
МЕТА:
навчальна: ознайомлення з властивостями та моделями алгоритмів;
розвиваюча: розвивати поняття алгоритму;
виховна: виховувати інтерес до комп’ютерних наук
ОБЛАДНАННЯ: дошка
ПЛАН
1 Поняття сортування
2 Сортування простим вибором
3 Сортування методом бульбашки
4 Швидке сортування
Зміст лекції
1 Поняття сортування
Поширеним завданням, що виникає при роботі з масивами та лінійними списками, є завдання сортування, тобто розташування елементів в порядку зростання або зменшення значень. Існує набір алгоритмів сортування. При цьому розрізняють так зване “внутрішнє” та “зовнішнє” сортування, тобто сортування структур даних, що знаходяться в оперативній або в зовнішній пам’яті комп’ютера.
При внутрішньому сортуванні всі дані, що сортуються, поміщають в оперативну пам’ять комп’ютера, де можна отримати доступ до даних в будь-якому порядку (тобто використовується модель пам’яті з довільним доступом). Зовнішнє сортування застосовують тоді, коли об’єм впорядковуваних даних надто великий для розташування в оперативній пам’яті. При цьому вузьким місцем є механізм переміщення великих блоків даних між пристроями зовнішнього зберігання даних та оперативною пам’яттю комп’ютера. Те, що фізично неперервні дані слід для зручності переміщення організовувати у блочну структуру, змушує користувачів використовувати різні методи зовнішнього сортування.
Структура алгоритмів сортування є не дуже складною, їх доволі легко реалізовують будь-якою мовою програмування.
На сучасному етапі розвитку технології програмування існує тенденція використання готових процедур сортування, вмонтованих в інструментальне програмне забезпечення. Користуючись ними, важливо розуміти механізм їх роботи, особливості того чи ін. методу.
Розглянемо деякі поширені алгоритми внутрішнього сортування.
