4 Результаты тестирования программы
Результаты тестирования программы представлены в таблице 2.
Таблица 2 – Результаты тестирования.
Номер |
txtEnter |
lblEntryValue |
lblAc |
lblAcExp |
lbl num |
lblSum |
lblErr |
1 |
15 |
15 |
0,000001 |
3269017,3724721 |
51 |
3269017,3724719 |
|
2 |
21 |
|
|
|
|
|
Ошибка |
3 |
-16 |
-16 |
0,000001 |
0,0000001 |
54 |
0,0000002 |
|
4 |
-13 |
-13 |
0,00001 |
0.000002 |
44 |
0,000003 |
|
5 |
-10 |
-10 |
0,0001 |
0,00005 |
34 |
0,00005 |
|
6 |
Пустое (замена на 1) |
1 |
0,0001 |
2,71828 |
8 |
2,71828 |
|
7 |
Проверка диапазона с использованием decimal |
50 |
0,000001 |
518470552858707000000,0000000 |
146 |
5184705528587072464087,4533222 |
|
8 |
Проверка на ввод лишних символов |
20fg |
|
|
|
|
“fg” не ввелось |
9 |
Проверка на ввод числа вне диапазона |
324 |
|
|
|
|
“Число находится вне диапазона!” |
Скриншоты работы программы представлены на рисунках 7-13.
Рисунок 7 – Проверка ввода 15 (Тест №1).
Теперь рассмотрим крайний случай, введем 20. Перед показом результата рассмотрим хранение типа переменной Double в памяти. Под хранение отводится 64 бита или 8 байт. 52 бита отводится под хранение мантиссы (всех цифр в целом), 11 бит под порядок (положение запятой), 1 бит под знак. Исходя из этого можно предположить, что максимальное число, которое может хранится в переменной double равно 52 единицы в двоичной системе счисления. Что равно 4503599627370495. Оно включает в себя 16 чисел.
Теперь рассмотрим сам случай ввода 20.
Рисунок 8 – Ввод верхней границы, то есть 20 (Тест №2).
Получим, если убрать порядок будет число 4851651954097900.
Сравним с максимальным числом, хранимым в переменном типе double: 4503599627370495 < 4851651954097900
Очевидно, что число в экспоненте намного больше допустимого, чтобы сохранить его без потери первых знаков компьютер записывает число меньше допустимого, а остальные знаки заполняет нулями. В этом же случае незначащий ноль будет последний 7, а обещаемая точность 6, поэтому на работу программы это никак не повлияет.
Рисунок 9 – Проверка при вводе -16 (Тест №3).
Рисунок 10 – Проверка при вводе -13 (Тест №4).
Рисунок 11 – Проверка при вводе -10 (Тест №5).
Рисунок 12 – Пользователь оставил одно пустое поле (Тест №6).
Выше говорилось про возможность расширить диапазон принимаемых значений, рассмотрим тест с расширенным диапазоном.
Рисунок 13 – Результат с использованием Decimal(Тест № 7)
Выводы
Была создана программа для расчёта ряда. Программа учитывает все возможные случаи и справляется с их решением.
В результате работы программы были выявлены следующие достоинства и недостатки программы:
Достоинства:
1 Удобный и интуитивно понятный интерфейс программы;
2 Учтены все возможные случаи и подводные камни;
3 Точность схожа со значением, вычисленным Microsoft;
4. Можно добавить точность за счёт изменения типа данных.
Недостатки:
1 Программа работает только в определенных рамках.
Поставленная в начале задача реализована. Программа справляется с задуманным функционалом.