
ЛР2 / ЯП_Л2_Python
.odtМинистерство науки и высшего образования Российской Федерации
Федеральное государственное автономное образовательное учреждение
высшего образования
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)
Кафедра безопасности информационных систем (БИС)
ВЕЩЕСТВЕННЫЕ ЧИСЛА. ОШИБКИ ПРИ РАБОТЕ С ВЕЩЕСТВЕННЫ-
МИ ЧИСЛАМИ
Отчет по лабораторной работе №2
по дисциплине «Языки программирования»
Студент гр. 733-1
_______ Сметанников Д.Е
_______
Принял:
Доцент, доцент каф. КИБЭВС
_______ А.С. Романов
_______
Содержание
1 Введение 3
2 Ход работы 4
Заключение 6
Введение
Цель работы — Знакомство с основными ошибками, возникающими при обработке вещественных чисел.
Для работы был выбран ЯП Python.
Ход работы
В ходе работы были получены исходные
значения x = 23730207331,18012005. Были
выполнены операции
,
c=x+y,
,
а так же округление x до
целого числа и c до 9 знаков
вручную и с помощью программы на выбранном
ЯП (рисунок 2.1) Была рассчитана относительная
ошибка.
Результаты, полученные ручным вычислением:
y = 2,373020733118012005; c = 23730207333,553140783118012005; z1 = 23730207331,18012006; z2 = 23730207331,18012004; k = 23730207331; roundc = 23730207333,553140783;
Относительная ошибка для каждого значения:
O(c) = 0,000000000000000033001; O(y) = 0,000000000000000002107; O(z1) = 0,000000000000000002528; O(z2) = 0,000000000000000001686; O(k) = 0,0000000000075903
Данные ошибки связаны с хранением вещ. чисел в памяти. В случае ЯП Python тип данных float хранит 15-17 значащих цифр. Так же в любых ЯП присутствуют такие ошибки как: исчезновение операнда, потеря значимости и умножение ошибки. Исчезновение операнда появляется, если один операнд относительно мал по отношению с другим операндом. Потеря значимости появляется при вычитании почти равных чисел или же если результат вычислений невозможно представить в допустимой форме. Умножение ошибки появляется при использовании арифметики с плавающей точкой, даже если относительная ошибка мала. Обычно это является результатом умножения деления.
К исчезновению операнда относятся значения z1, z2. К умножению ошибки относится y. К потере значимости относится c, roundc.
Р
исунок
2.1 — Полученные результаты программой.
Заключение
Была написана простенькая программа для вычислений на выбранном ЯП. Произведено сравнение результатов, полученных путем вычисления программой и вручную и объяснена причина таких ошибок. Рассчитаны относительные ошибки.
Томск 2025