Я ищу библиотеку Java, которая представляет фракции (рациональные числа). Например, если я хочу сохранить фракцию 1/3, то она не будет сохранена как 0.33333, которая потеряет свою точность.
Вот некоторые из функций, которые я ожидаю найти в такой библиотеке:
-
getNumerator() -
getDenominator() -
add(Rational r1, Rational r2),subtract(Rational r1, Rational r2),multiply(Rational r1, Rational r2),divide(Rational r1, Rational r2) -
isProper() -
getCommonDenominator(Collection<Rational> rationals) -
getSimplified()
Я могу реализовать такую библиотеку самостоятельно, хотя мне было интересно, похоже ли что-то подобное.
РЕДАКТИРОВАТЬ: Было бы неплохо, если бы библиотека реализовала (в дополнение к выше) некоторые алгоритмы теории чисел, такие как getEgyptianFractionsSum() и т.д.