大话西游666
我对如何做到这一点很感兴趣,所以我从蟑螂那里找到了处理任意精确计算的apd包。您可以像这样使用它:import ( "fmt" "github.com/cockroachdb/apd")func main() { // 99707 * 10^(-18) n1 := apd.New(99707, 0) n2 := apd.New(10, 0) n3 := apd.New(-18, 0) c := apd.BaseContext.WithPrecision(200) res := apd.New(0,0) ctx, err := c.Pow(res, n2, n3) if err != nil { panic(err) } ctx, err = c.Mul(res, res, n1) if err != nil { panic(err) } fmt.Println(ctx.Inexact(), res.Text('f'))}它将输出:false 0.000000000000099707您必须小心可能发生的精度损失,并查看不精确的字段。