
- •Алгоритмізація і програмування процедур обробки інформації Навчально-методичний посібник для самостійного вивчення дисципліни Рекомендовано Міністерством освіти України
- •Алгоритмізація і програмування процедур обробки інформації Навчально-методичний посібник для самостійного вивчення дисципліни
- •Тема 1. Введення в теорію алгоритмів 6
- •Тема 2. Форми та засоби представлення алгоритмів 14
- •Тема 3. Алгоритмічні системи 23
- •Тема 4. Класифікація задач і процесів обробки інформації 44
- •Тема 5. Типи алгоритмічних процесів та принципи їх побудови 49
- •Тема 6. Алгоритми обробки соціально- економічної інформації 88
- •Тема 7. Визначення та короткий огляд мов програмування 123
- •Тема 8. Технологія програмування 133
- •Типова програма
- •Дисципліни «Алгоритмізація і програмування
- •Процедур обробки інформації»
- •Частина і
- •Тема 4. Класифікація задач і процесів обробки інформації
- •Тема 5. Типи алгоритмічних процесів та принципи їх побудови
- •Тема 6. Алгоритми обробки соціально-економічної інформації
- •Тема 7. Визначення та короткий огляд мов програмування
- •Тема 8. Технологія програмування
- •Навчально-методичне забезпечення
- •1.1. Методичні вказівки до вивчення теми
- •1.1.1. Визначення та властивості алгоритму
- •1.1.2. Алфавітні оператори
- •1.1.3. Характеристики алгоритму
- •1.2. Практичне заняття
- •1.3. Термінологічний словник
- •1.4. Завдання для перевірки знань
- •Тема 2. Форми та засоби представлення алгоритмів
- •2.1.1. Словесна форма
- •2.1.2. Словесно-формульна форма
- •2.1.3. Граф-схеми
- •2.1.4. Блок-схеми
- •2.1.5. Операторні схеми
- •2.1.6. Ніро-схеми
- •2.1.7. Таблиці рішень
- •2.2. Термінологічний словник
- •2.3. Практичні заняття
- •2.4. Задачі
- •3.1. Методичні вказівки до самостійного вивчення теми
- •3.1.1. Визначення алгоритмічної системи
- •3.1.2. Рекурсивні функції
- •3.1.3. Нормальні алгоритми Маркова
- •3.1.4. Машини Поста
- •3.1.5. Машини Тьюринга
- •3.1.6. Абстрактні автомати
- •3.1.7. Формальні граматики
- •3.1.8. Алгоритмічні основи еом
- •3.2. Термінологічний словник
- •3.3. Навчальні завдання
- •3.4. Завдання для перевірки знань
- •Тема 4. Класифікація задач і процесів обробки інформації
- •4.1. Методичні вказівки до самостійного вивчення теми
- •Науково-технічні задачі
- •Задачі обробки спискових структур
- •Задачі обробки символьної інформації
- •Інформаційно-пошукові задачі
- •Задачі моделювання та ділові ігри
- •Економічні задачі
- •4.2. Питання для перевірки знань
- •Тема 5. Типи алгоритмічних процесів та принципи їх побудови
- •5.1. Методичні вказівки до вивчення теми
- •5.1.1. Лінійні алгоритми (5.1)
- •5.1.2. Розгалужені алгоритми (5.2)
- •5.1.3. Прості циклічні процеси з параметром (5.5)
- •5.1.4. Ітераційні циклічні процеси ( 5.6 )
- •5.1.5. Складні циклічні процеси (5.7)
- •5.2. Термінологічний словник
- •5.3. Плани практичних занять
- •Запитання для перевірки знань
- •Запитання для перевірки знань
- •Приклади задач
- •Запитання для перевірки знань
- •Приклади задач
- •Запитання для перевірки знань
- •Приклади задач
- •Запитання для перевірки знань
- •5.4. Навчальні завдання Завдання до 1-го заняття
- •Завдання до 2-го заняття
- •Завдання до 3-го заняття
- •Завдання до 4-го заняття
- •Завдання до 5-го заняття
- •5.5. Завдання для перевірки знань
- •Тема 6. Алгоритми обробки соціально-економічної інформації
- •6.1. Методичні вказівки до вивчення теми
- •6.1.1. Створення та контроль наборів даних (6.1)
- •6.1.2. Коригування наборів даних (6.2)
- •6.1.3. Сортування наборів даних (6.3)
- •6.1.4. Розрахунки підсумків на основі окремого запису (6.4)
- •Список працюючих жінок
- •6.1.5. Розрахунки підсумків на основі всіх записів (6.5)
- •Про середню заробітну плату
- •6.1.6. Розрахунки проміжних підсумків на основі частини записів (6.6)
- •6.1.7. Обробка запитів з використанням довідників (6.7)
- •Список підприємств
- •6.1.8. Розрахунки підсумків на основі багатьох запитів з використанням декількох вхідних файлів (6.8)
- •6.2. Плани практичних занять Заняття 1.
- •Заняття 2
- •Запитання для перевірки знань
- •Наявна кількість матеріалу____________
- •Запитання для перевірки знань:
- •Поділ працівників за статтю
- •Поділ працівників за неперервним стажем роботи
- •Поділ заробітної плати за розрядами робіт
- •Списки робітників, молодших за 20 років
- •Запитання для перевірки знань:
- •Список підприємств, що замовили
- •Перелік матеріалів
- •Справка про попит / пропозицію на
- •Сума затрат на матеріали
- •Результат обліку матеріалів на складах
- •Перелік матеріалів на складах
- •6.3. Термінологічний словник
- •6.4. Навчальні завдання
- •Тема 7. Визначення та короткий огляд мов програмування
- •7.1. Методичні вказівки до самостійного вивчення теми
- •7.1.1. Визначення мови програмування
- •7.1.2. Вимоги до мов програмування
- •7.1.5. Програмні інтерфейси та інструментальні засоби розробки програмних продуктів
- •7.2. Термінологічний словник
- •7.3. Запитання для самоконтролю засвоєння теми
- •Тема 8. Технологія програмування
- •8.1. Методичні вказівки до самостійного вивчення теми
- •8.1.1. Способи розробки програм
- •8.1.2. Основні технологічні етапи розробки програм
- •8.1.4. Розробка проекту програми
- •8.1.5. Написання програми
- •8.1.6. Налагодження програми
- •8.1.8. Супроводження програми
- •8.2. Запитання для самоконтролю засвоєння теми
3.4. Завдання для перевірки знань
1. Визначення алгоритмічної системи.
2. Поняття припустимої операції.
3. Типи алгоритмічних систем.
4. Поняття рекурсивної функції.
5. Визначення нормальних алгоритмів Маркова.
6. Визначення машини Поста.
7. Визначення машини Тьюринга.
8. Визначення абстрактного автомата.
9. Типи абстрактних автоматів та їх використання.
10. Визначення формальних граматик.
11. Типи, особливості формальних граматик та їх використання.
12. Алгоритмічна структура ЕОМ.
13. Чому рекурсивні функції можна використовувати у теорії алгоритмів?
14. Типи припустимих операцій в алгоритмічних системах.
15. Які операції можна виконувати над рекурсивними функціями?
16. Сутність операції суперпозиції.
17. Сутність операції примітивної рекурсії.
18. Сутність операції найменшого кореня.
19. Технологія обробки інформації за нормальним алгоритмом Маркова.
20. Два типи нормальних алгоритмів.
21. Композиція нормальних алгоритмів Маркова.
22. Складові частини машини Поста.
23. Представлення алгоритмів у машині Поста.
24. Складові частини машини Тьюринга.
25. Порівняння машин Поста і Тьюринга.
26. Модифікація машини Тьюринга.
27. Представлення алгоритмів у машині Тьюринга.
28. Технологія функціонування абстрактного автомата.
29. Автомати I та II роду.
30. Принцип дії абстрактних автоматів.
31. Способи завдання абстрактних автоматів.
32. Табличний спосіб завдання абстрактних автоматів.
33. Графічний спосіб завдання абстрактних автоматів.
34. Функціональний спосіб завдання абстрактних автоматів.
35. Контекстовільні граматики та їх застосування.
36. Контекстозалежні граматики та їх застосування.
37. Основні класи задач математичної лінгвістики.
Тема 4. Класифікація задач і процесів обробки інформації
4.1. Методичні вказівки до самостійного вивчення теми
У визначенні алгоритма ми зустрічались з поняттям класу задач. Як проводиться класифікація задач, за якими ознаками? Перш за все, це тип інформації, її організація та обсяги, типи операцій обробки, процедури обробки, методи розв’язання, особливості предметної області, термінологічні словники, час і термін розв’язання...
Звідси випливає необхідність здійснити класифікацію задач за їх ознаками, використовуваними методами, процедурами та операціями обробки інформації, специфікою її організації та представлення. Оскільки певні ознаки можуть мати спільні значення для різних класів задач, то класифікацію проводять за сукупностями ознак. Отже, не існує єдиної сталої класифікації. Можна запропонувати одну з багатьох класифікацій (рис. 4.1).
Науково-технічні задачі
Математичні дослідження досягли значних результатів у галузі створення строгої логічної основи для розширення множини об’єктів, до яких застосовні раніш розроблені методи. Але для практичного застосування більш важливими є методи доведення математичних досліджень до числового результата.
Р
ис.
4.1. Класифікація задач обробки інформації
У багатьох галузях науки й техніки зустрічаються задачі, для яких неможливо отримати точне розв’язання рішення класичними методами, або складний вигляд результату неприйнятний для практичного використання. Це задачі розв’язання систем лінійних алгебраїчних рівнянь з багатьма невідомими, по-шуку коренів алгебраїчних рівнянь високих степенів, коренів трансцендентних, диференційних рівнянь, які не інтегруються в елементарних функціях.