3 Кодирование программы в среде программирования

3.1 Разработка структуры программы

Программа разрабатывалась в среде программирования Microsoft Visual Studio 2015 на основе схем алгоритмов, описанных в предыдущем разделе.

В состав программы входят следующие функции:

1)Сохранение результатов в файл путём вызова метода, реализующего сохранение;

2)Загрузка исходных данных;

3)Функции для расчёта исходных данных;

Проект приложения включает в себя:

1) MyForm.cpp, MyForm.h – главные файлы проекта, описывающие форму и работу программы;

3.2 Разработка интерфейса пользователя

Интерфейс в программе состоит из:

1) графика;

2) кнопок для расчёта, загрузки и сохранения данных;

3) полей для ввода исходных данных;

4) таблица.

 

Рисунок 3.1 - Интерфейс программы

3.3 Программирование ввода-вывода данных

Вывод данных реализован на главную форму и запись точек интерполяции в таблицу. Схема вывода данных представлена на рисунке 2.2.

3.4 Программная реализация численного метода

Код численного метода:

n = (b - a) / h;

_X = new double[n+1];

_Y = new double[n+1];

yy = new double[n+1];

for (int i = 0; i <= n; i++) {

_X[i] = a + h*i;

_Y[i] = f(_X[i]);

}

yy[0] = (-3 * _Y[0] + 4 * _Y[1] - _Y[2]) / h;

for (int i = 1; i < n; i++) {

yy[i] = (_Y[i + 1] - _Y[i - 1]) / 2 / h;

}

yy[n] = (3 * _Y[n] - 4 * _Y[n - 1] + _Y[n - 2]) / 2 / h;

 

Исходный код программы см. в приложении А.

4 Тестирование работоспособности программы

4.1 Описание аппаратной конфигурации для тестирования

Тестирование разработанного приложения выполнялась на персональном компьютере под управлением операционной системы Windows 10 Pro со следующими характеристиками аппаратной части:

1) тип центрального процессора AMD Ryzen 3550H:

- техпроцесс 12 нм;

- число ядер - 4;

- тактовая частота процессора – 3700 МГц;

- частота шины 2x133 МГц

- величина напряжения ядра – 35 В;

- наименование системного разъема– Socket AM4;

- объем кэша данных: L1 = 384; L2 = 2MB; L3 =4 Мб.

2) системная плата AMD CZ FCH с параметрами:

- форм-фактор ATX;

- тип интерфейса подключения видеоадаптера –DVI;

- максимальный объем оперативной памяти – 32Гб;

- интерфейс подключения жесткого диска– PCI-Express. установлен модуль оперативной памяти DDR-4 объёмом 8 ГБ;

3) типы внешней памяти компьютера:

- тип жесткого диска –Kingston SSD;

- максимальный объем в 256 ГБ;

- интерфейс подключения: PCI-Express.

4.2 Тестирование разработанной программы

Для тестирования программы используется функция:

Согласно принятой форме в программе задаются следующие исходные данные:

1) начало интервала ;

2) конец интервала

3) Шаг .

Рисунок 4.1 - Результат расчёта программой

Время расчета составило менее 1 с.

Результаты расчета в виде текстового файла приводятся в Приложении Б.

4.3 Решение задачи в математической системе Mathcad

Для тестирования программы использовался Mathcad 15.

Заданы те же исходные данные, что и в пункте 4.2.

Рисунок 4.2 График решения в Mathcad

Полное решение приводится в приложении В.

4.4 Решение задачи в математической системе MATLAB

 

Для тестирования программы использовался MATLAB R2017a.

Использовались те же исходные данные, что и в п.4.2.

Код файла представлен в Приложении Г.

Рисунок 4.3 - Результат расчёта в MATHLAB

 

4.5 Анализ результатов тестирования

Результаты расчёта выводились на графики и записывались в таблицу. Значения, рассчитанные программой и построение графиков, было одинаковое во всех трёх пунктах, следовательно программа выполняет расчёт верно.