- •Алгоритмізація і програмування процедур обробки інформації Навчально-методичний посібник для самостійного вивчення дисципліни Рекомендовано Міністерством освіти України
- •Алгоритмізація і програмування процедур обробки інформації Навчально-методичний посібник для самостійного вивчення дисципліни
- •Тема 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. Запитання для самоконтролю засвоєння теми
6.1.2. Коригування наборів даних (6.2)
Коригування вже створеного файла може вестися у трьох напрямках: видалення окремих записів, зміна значень деяких полів у всіх або деяких записах файла, дозапис файла. В усіх випадках необхідно ввести коригуючу інформацію для пошуку відповідних записів та нові значення полів, якщо вони є. Ця інформація повинна бути заздалегідь підготовленою та вводитись з клавіатури, причому, якщо поле, що є ознакою для пошуку запису, коригується, то можлива подальша обробка файла, наприклад упорядкування. Алгоритм коригування файла зображено на рис. 6.4.
Приклад 2. Відкоригувати файл KADR, створений у попередньому прикладі, таким чином:
— видалити запис із табельним номером 2708;
— замінити зарплату Іванову А. С. на 350 грн.;
— додати новий запис:
00125
02
5601
Петрова Г. А.
1965
...
Ж
Нехай до коригуючої інформації належать: поле ознаки коригування р:
1 — додавання нового запису;
2 — вилучення запису;
3 — коригування полів.
Для ознак 2 та 3 вказується ім’я поля пошуку запису, для ознаки 3 — ще й ім’я поля, значення якого змінюється (або декількох полів).
Отже, коригуючий набір інформації складатиметься з трьох записів:
2 TABNOMK 2708
3 FIOK Іванов А.С. ОKLK 350
1 00125 025601 ПЕТРОВА Г.А. 1965 Ж . . .
Алгоритм коригування файла KADR у прикладі 2 зображено на рис. 6.5:
Рис. 6.5. Приклад алгоритму коригування файла (6.2)
6.1.3. Сортування наборів даних (6.3)
Що стосується сортування та впорядкування записів файлу за значеннями певних окремих полів або груп полів, то тут, як правило, використовуються стандартні процедури, що реалізують різні методи сортування файлів.
Перейдемо до обробки інформації. Взагалі кажучи, термін «обробка» передбачає зміну того, на що спрямована дія — оброблення. Але тільки якщо це не стосується інформації. Тут під «обробкою» розуміють отримання нової інформації з використанням тієї, що вже існує (зібрана і зберігається), без зменшення і пошкодження її.
Задачі обробки інформації формулюються у вигляді запиту на отримання інформації, з якої утворюється вихідний документ певної форми.
Перш ніж розробляти алгоритм обробки запиту, необхідно проаналізувати, які дані містить вихідний документ, які з них можна передати з вхідного файла (файлів), а які треба розрахувати в процесі перегляду записів вхідного файла.
Крім того, треба визначити, чи достатньо даних вхідних файлів для формування вихідного документа за запитом, тобто чи є коректною постановка задачі обробки запиту.
Вміст та форма представлення результату обробки запиту визначаються у самому запиті у вигляді документа або сформульовані словесно, і тоді треба вміти самостійно розробляти форму вихідного документа чи структуру запису вихідного файла.
Після такого аналізу можна складати алгоритм обробки запиту з використанням усіх необхідних файлів.
6.1.4. Розрахунки підсумків на основі окремого запису (6.4)
Такі розрахунки можуть вестися для кожного запису файла або для окремих записів, які вибираються за деякими ознаками.
Загальний алгоритм розрахунку підсумків за окремими записами зображено на рис. 6.6.
Приклад 3. Підготувати та надрукувати за запитом список працюючих жінок з інформацією про вік, сімейний стан, оклад та кількість дітей.
Проведено аналіз запиту. Оскільки це список, то рядки його треба нумерувати, тобто першою у таблиці йтиме колонка порядкових номерів. Наступною буде колонка прізвищ, які вибираються за даними про стать працівника. Ці дані у вхідному файлі є. Вік можна обчислити, якщо ввести значення поточного року та відняти рік народження. Усі інші дані про сімейний стан, оклад та кількість дітей можна перенести з вхідного файла. Отже, вихідний документ має назву «Список працюючих жінок» та шапку:
Рис. 6.6. Алгоритм розрахунку підсумків за окремими записами (6.4)
