I'm dealing with numbers that require a big.Float
type, and I need to divide them. I'm aware that big.Int
has a .Div()
function, but if I'm correct, that truncates the value and loses the precision I get from using big.Float
.
Relevant code
func e(prec int64) (res *big.Float) {
res = big.NewFloat(float64(1.0))
base := big.NewInt(prec)
for i := base; i.Cmp(big.NewInt(int64(0))) == 1; _ = i.Sub(i, big.NewInt(1)) {
d := big.NewFloat(float64(1.0))
_ = d.Div(fact(i)) // error here
res.Add(d)
}
return
}