Я ищу библиотеку 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()
и т.д.