分割大量数字(big.Int)

时间:2017-10-07 14:02:00

标签: go

我试图划分两个大数字(例如试图将50!除以18!)并且我设置了两个big.Int变量。

first.MulRange(1,50)

second.MulRange(1,18)

如何划分数字(理想情况下是整数除法)?

谢谢!

1 个答案:

答案 0 :(得分:7)

  

如何划分数字

通过调用Int(在这种情况下)数据类型的Div()方法。 (“数学/大”包)

first := new(big.Int).MulRange(1, 50)
second := new(big.Int).MulRange(1, 18)

fmt.Printf("First: %s \n", first.String())
fmt.Printf("Second: %s \n", second.String())
// division
dv := new(big.Int).Div(first, second)

fmt.Printf("Division result: %s \n", dv.String())

结果:

First: 30414093201713378043612608166064768844377641568960512000000000000
Second: 6402373705728000
Division result: 4750440164794325701367714688167999176704000000000