ВАРИАНТ 14
Требуется разработать графическое приложение на языке C++ стандарта не ниже C++17 с использованием графической библиотеки Qt. Приложение должно выполнять следующие задачи:
- Численный расчёт аналитических функций с заданным шагом (большим 0) дискретизации (пользователем) по x или y (функции представлены в документе "Варианты") (3 параметра для каждой оси: пределы расчёта, шаг расчёта) (Расчёт точек должен вычислять параллельно)
- Хранить рассчитанную информацию в базе данных SQLite.
- Построить по результатам вычислений график функции
- Линейно интерполировать функцию заданную координатами точек для отыскания значения ординаты по абсциссе и наоборот по численным расчётам.
- Отображать из модели данных рассчитанные значения в виде таблицы (с возможностью редактировать, изменения в БД должны быть видны), либо графически в виде кривой в графопостроителе.
- Экспорт данных в буфер обмена, либо файл формата csv (с возможностью выбора области экспорта).
- Должна быть возможность для данных функции задать коэффициенты:
- Смещения по x, y
- Масштаба по x, y
- Хранить всю дополнительную информацию о расчётах через связь в отдельной таблице.
БД проектируется на базе SQLite и подключение к ней и конфигурация (создание таблиц, добавление данных) выполняется из приложения. Также в виде отдельных SQL файлов должны быть представлены все скрипты для создания таблиц, записи данных и их чтения оттуда.
Модель хранения
- Таблица хранит значения рассчитанных точек функций:
- id точки (первичный ключ автоинкрементируемый)
- x
- y
- Тип функции (1 или 2)
- Тип точки (рассчитанная/интерполированная)
- Таблица хранит данные о параметрах инициализации
- Выбранный тип функции (1 или 2)
- Параметры дискретизации
- Значении коэффициентов
Условия выполнения работы
- Разработать техническую документацию в виде отчёта по установленному стандарту
- Разработать программное обеспечение:
Создать и описать базу данных SQLite
Создать и описать программу на C++ с использованием Qt
Выполнить тестирование приложения
Выполнить расчёты в соответствии с вариантом задания
Отчёт о выполненной работе должен содержать:
- Постановку задачи и требования, которые были на момент написания
- Описание выполненной работы:
- Описание примененных классов и методов;
- Обоснование необходимости их применения;
- Блок-схемы структуры приложения, алгоритмов заложенных в нем;
- Примеры графического интерфейса, и описание элементов, их назначение.
- Сценарии использования приложения пользователем;
- Сценарий тестирования и демонстрации работоспособности разработанного приложения.
- Список использованной литературы.
- Листинг.