- •Затверджую Начальник спеціальної кафедри № 5
- •Методична розробка
- •Тема 1. Мови асемблера та їх використання для побудови базових елементів системних програм.
- •Тема 1/9
- •Контрольні запитання про таблиці системних програм
- •Короткі теоретичні відомості
- •Побудова процедур визначення відношень порядку для групи ключових полів
- •Основні типи відношень в процедурах пошуку Відношення рівності та нерівності
- •Відношення порядку
- •2. Модифікація таблиць за результатами лінійного та двійкового пошуку
- •3. Побудова процедур визначення мір близькості для ключових полів Відношення подібності
- •4. Програмування пошуку за мірами близькості
- •Структура програмного шаблона виконання роботи
- •Рекомендації з модифікації і розширення функцій модулів
- •Завдання на роботу
Завдання на роботу
Завдання на підготовку до роботи на комп’ютері:
1. Визначити варіант завдання для додаткової задачі за Табл. 9.1.
2. Ознайомитись з шаблоном програмного проекту spLb1. Настроїти відповідні дані в програмному проекті на мові С.
3. Настроїти в файлі реалізації table.cpp функції пошуку та корекції за результатами двійкового пошуку (struct recrd *selBin(struct keyStr kArg, struct recrd*tb, int ln), struct recrd *insBin( struct recrd *pElm, struct recrd*tb, int *pQnElm), struct recrd *delBin (struct recrd*pElm, struct recrd*tb, int* pQnElm), struct recrd *updBin(struct keyStr, struct recrd* pElm, struct recrd*tb, int*pQnElm)), відмітки про вилучення, упакування таблиці, впорядкування таблиці і вставку до таблиці за значенням ключових полів з використанням різних методів.
для таблиці з доступом за ключовим полем або групою полів за методом двійкового пошуку – налагодження виконати в файлах tables.h і tables. cpp;
4. Скласти алгоритми функцій вставки, вилучення і корекції в таблицях на базі методу двійкового пошуку і підготувати програмні модулі, які забезпечують вставку, вилучення і корекцію елемента таблиці за значенням ключового елемента: для таблиці з доступом за ключовим полем або групою полів за методом двійкового пошуку – заготовки функцій insBin, delBin та updBin в кінці модуля tables.cpp.
Увага! Для вставки нового елемента за результатами двійкового пошуку потрібно повертати значення покажчика або номера найближчого елемента таблиці.
5. Підготувати програмні модулі для додаткової задачі: пошуку з порівнянням за мірою близькості за варіантом з таблиці 9.1.
6. Підготувати програмний модуль контрольної задачі, який виконує задані варіанти програм пошуку і вставки в таблицю за значенням ключового елемента, а також додаткових задач і дозволяє перевірити коректність виконання програм.
Завдання на роботу на комп’ютері
7. Побудувати програмний проект, ввівши програмні модулі у відповідні файли проекту і налагодити синтаксис.
8. Побудувати виконавчий модуль тестової програми і налагодити змістовне виконання програми.
9. Одержати результати виконання, проаналізувати їх і зробити висновки.
Порядок вибору варіанту:
За останньою цифрою номера залікової книжки або за порядковим номером студента в списку підгрупи визначте варіант завдання для додаткового завдання за табл. 9.1.
Таблиця 9.1
Варіанти завдань для виконання порівняння ключів з використанням міри схожості
№ вар. |
Тип функції порівняння за мірою схожості |
1 |
Співпадіння максимуму початкових літер у ключі. |
2 |
Спiвпадіння максимальної кількості літер без урахування їх послідовності у ключі. |
3 |
Спiвпадiння максимальної кількості літер з врахуванням послідовності їх входження у ключі. |
4 |
Спiвпадіння максимуму початкових літер без врахування регістрів великих i маленьких літер. |
5 |
Співпадіння максимальної кількості літер без врахування регістрів i їх послідовності в ключі. |
6 |
Співпадіння максимальної кількості літер з врахуванням їх послідовності без врахування регістрів літер. |
7 |
Співпадіння максимуму початкових літер, включаючи літери латинського i слов'янського алфавіту, що співпадають за написанням. |
8 |
Співпадіння максимальної кількості літер, включаючи літери латинського i слов'янського алфавіту, що співпадають за написанням. |
9 |
Співпадіння максимуму початкових літер, включаючи літери латинського i слов'янського алфавіту, що співпадають за написанням інваріантно до регістру літер. |
10 |
Спiвпадiння максимальної кількості літер, включаючи літери латинського i слов'янського алфавіту, що співпадають за написанням iнварiантно до регістру літер. |
Завдання на самостійну роботу: повторити матеріал лекції; вивчити основні поняття.
/В.І.Пустоваров/
