Вы должны повысить точность вычислений BigFloat
, чтобы получить правильный результат, например, как это:
julia> setprecision(1000) do
round(factorial(big(76)), sigdigits=2)
end
1.9e+111
Источник проблемы заключается в том, что при округлении Юлия представляет {base}^{number of digits to round}
как соответствующее число с плавающей запятой. В этом случае это BigFloat(10)^-110
, что при точности по умолчанию недостаточно точно для требуемого количества цифр.