class BigFloat : IComparable, IComparable<BigFloat>, IEquatable<BigFloat>
{
private BigInteger numerator;
private BigInteger denominator;
...
}
Fraction
в 11l.А можно пример, как использовать типТакая реализация соответствует типуFraction
в 11l.
Fraction
? В документации нету.Для хранения больших вещественных чисел, чтобы не было вот так:А для каких задач вам нужен BigFloat?
Float my = 123456789123456789.123456789123456789
print(my) //Output: 123457000000000000
А можно пример, как использовать типFraction
?
var my = Fraction(BigInt(‘123456789123456789123456789123456789’),
BigInt(‘1000000000000000000’))
print(my)
print(Float(my))
fn fraction_as_decimal_string(f, digits)
var s = String(f.numerator * BigInt(10)^digits I/ f.denominator)
s.insert(s.len - digits, ‘.’)
return s
print(fraction_as_decimal_string(my, 18))
Fraction
поддерживает операции +
, -
, *
и /
. Если нужно что-то ещё, могу добавить.