Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы по Visual Studio C++ (Волков) - ОТЧЁТЫ с подробным кодом / Лабораторная работа №5 (Расчёт экспоненты).docx
Скачиваний:
1
Добавлен:
04.09.2024
Размер:
1.22 Mб
Скачать

4 Результаты тестирования программы

Результаты тестирования программы представлены в таблице 2.

Таблица 2 – Результаты тестирования программы

Ввод данных

Вывод

x =

Точность

Исходное значение

Точность

Точное значение exp(x)

Число слагаемых

Сумма ряда exp(x)

1

0,1

MessageBox: «Пожалуйста, введите значение X.»

2

0,0005

0,01

0,0005

0,0001

1,00050

3

1,00050

3

5

0,001

5

0,001

148,4132

19

148,4130

4

-2

0,0001

-2

0,0001

0,13534

12

0,13533

5

23

0,00001

MessageBox: «Значение X должно быть в диапазоне: X=(-13<=X<=20).

6

-13

0,000001

-13

0,000001

0,0000023

47

0,0000023

7

20

0,000001

20

0,000001

485165195,

4097900

66

485165195,

4097900

На рисунках 8 – 14 представлены скриншоты результатов работы программы в тестах, в том числе с окнами об ошибках при некорректном вводе данных пользователем.

Рисунок 8 – Результаты работы программы при тесте №1

Рисунок 9 – Результаты работы программы при тесте №2

Рисунок 10 – Результаты работы программы при тесте №3

Рисунок 11 – Результаты работы программы при тесте №4

Рисунок 12 – Результаты работы программы при тесте №5

Рисунок 13 – Результаты работы программы при тесте №6

Рисунок 14 – Результаты работы программы при тесте №7

5 Результаты тестирования программы с типом данных Decimal

Для повышения точности вычислений и выявления верхней границы значения X, при которой программа с типом данных Double может корректно вычислить значение exp(X), изменим тип данных в коде программы на Decimal. Результаты тестирования программы с типом данных Decimal представлены в таблице 3.

Таблица 3 – Результаты тестирования программы с типом данных Decimal

Ввод данных

Вывод

x =

Точность

Исходное значение

Точность

Точное значение exp(x)

Число слагаемых

Сумма ряда exp(x)

1

20

0,000001

20

0,000001

485165195,4097900

66

485165195,4097901

2

21

0,000001

21

0,000001

1318815734,4832100

69

1318815734,4832146

Рисунок 15 – Результаты работы программы с типом данных Decimal при тесте №1

Рисунок 16 – Результаты работы программы с типом данных Decimal при тесте №2

Выводы

В данной работе была разработана простая циклическая программа

«Расчет значения ехр(х)», предназначенная для вычисления значения функции ехр(х) с точностью до eps = 0.1, 0.01, …, 0.000001 путем разложения функции в ряд.

Интерфейс программы состоит из кнопок «Расчёт exp(x)», «Закрыть», а также трёх групп элементов:

– Поле ввода X;

– Выбор точности, где находятся 6 кнопок выбора точности вычисления суммы ряда с обязательным выбором одной из них (тип элемента – RadioBox);

– Результаты (Тип элементов – Label).

Во время разработки был учтён возможный ввод пользователем некорректных данных, нулевое значение курса обмена. При пустом вводе или вводе Х из неккоректного диапазона – выводятся окна с соответствующими сообщениями о каждой ошибке. Результат выводится согласно точности (+1 знак). Границы диапазона Х были выбраны максимальные для типа данных Double с проверкой через тип данных Decimal.

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