нтажувати її з попередньо підготовленого файлу, і робити пошук максимальної по довжині підпослідовності, а потім проводити збереження послідовності у файл.
Обмеження, встановлені для реалізації завдання:
В· багатофайлових проекту;
В· наявність меню з зручним інтуїтивно зрозумілим графічним інтерфейсом;
В· можливість зміни параметрів програми без зміни початкового коду;
В· можливість проводити пошук всіх підпослідовностей максимальної довжини;
В· робота з файлами.
2.2 Реалізація завдання
При реалізації завдання були розроблені дві структури: для роботи з послідовностями posled і для організації пошуку підпослідовності всередині послідовності search. Список файлів проекту представлений в таблиці 2.2.1. Для зручності доступу до файлів в MAIN.CPP описані макроси для швидкого зміни шляху до файлів: з використанням склейки рядків MSTR (p) для текстових файлів і підстановки DISK (p) для підключаються файлів. p align="justify"> Таблиця 2.2.1 Файли проекту
Назва файлаОпісаніе файлаEGAVGA.BGIФайл графічного драйвераINCLUDE.HПодключеніе стандартних бібліотек, опис користувача типів, прототипи функцій, підключення користувальницьких файлов.ALG.CPPФункціі роботи з последовательностями.MENU.CPPФункции графічного інтерфейса.MAIN.CPPГлавний компільований файл проекту , що містить функцію main (). ABOUT.TXTТекстовий документ, його вміст відображається у пункті меню ABOUT.OPEN.TXTІз цього файлу завантажується послідовність для подальшої обробки. Формат запису: SAVE.TXTВ цей файл записується послідовність, якщо в меню OPTIONS було вказано роздільне збереження послідовностей.
Для реалізації графічного інтерфейсу була застосована стандартна бібліотека graphics.h, що використовує відеодрайвер egavga.bgi. Функцій взаємодії з користувачем 4: menu (), options (), about (), start (). Меню побудовано на рекурсивному і взаємно рекурсивному принципі. Для зменшення коду була створена функція відтворення фонового зображення draw_note (). Скріншоти головного меню і меню виведення результату представлені відповідно на малюнках 2.2.1 і 2.2.2. p align="justify"> Вміст файлу ALG.CPP вказано в таблиці 2/2.2. Розглянемо вміст файлу MENU.CPP більш докладно. br/>В
Малюнок 2.2.1 - Головне меню програми
В
Малюнок 2.2.2 - Меню представлення даних
Функція menu () містить графічне оформлення меню, а так само інформацію про взаємодію з користувачем за допомогою клавіатури. Для цих цілей використовується змінна типу static, яка вказує, який елемент...