Трудности при работе с дробями в современных системах программирования могут возникать из-за неточности представления чисел в двоичной математике. 14
Зачастую дроби в десятичной записи являются бесконечными и не вписываются в рамки ограничений разрядности двоичного формата. 1 Например, вместо числа 1/3, которое является бесконечной дробью, берётся нормализованное представление, и хранятся только 52 цифры дробной части мантиссы числа. 4 Дальнейшие цифры отбрасываются (с округлением), поэтому вместо числа 1/3, которое непредставимо в действительных типах данных, хранится другое ближайшее к нему представимое число. 4
Для решения проблемы можно использовать алгоритмы интервальной арифметики, которые выбирают на числовой оси два соседних заведомо корректных числа, между которыми расположен некорректный с математической точки зрения результат вычисления выражения. 1