mirror of
https://github.com/golang/go
synced 2024-11-21 17:54:39 -07:00
pidigits: Remove TODO, minor improvements
I tried adding a Scale method to big.Int and it didn't make any noticeable difference, so I'm removing my TODO. Also got rid of a few obvious allocations that I missed earlier for a modest improvement (~5%). R=golang-dev, gri CC=golang-dev https://golang.org/cl/2711043
This commit is contained in:
parent
a8c4da996e
commit
5bf420f0c8
@ -49,6 +49,7 @@ var silent = flag.Bool("s", false, "don't print result")
|
||||
var (
|
||||
tmp1 = big.NewInt(0)
|
||||
tmp2 = big.NewInt(0)
|
||||
tmp3 = big.NewInt(0)
|
||||
y2 = big.NewInt(0)
|
||||
bigk = big.NewInt(0)
|
||||
numer = big.NewInt(1)
|
||||
@ -80,7 +81,6 @@ func extract_digit() int64 {
|
||||
}
|
||||
|
||||
func next_term(k int64) {
|
||||
// TODO(eds) If big.Int ever gets a Scale method, y2 and bigk could be int64
|
||||
y2.SetInt64(k*2 + 1)
|
||||
bigk.SetInt64(k)
|
||||
|
||||
@ -92,8 +92,8 @@ func next_term(k int64) {
|
||||
}
|
||||
|
||||
func eliminate_digit(d int64) {
|
||||
tmp := big.NewInt(0).Set(denom)
|
||||
accum.Sub(accum, tmp.Mul(tmp, big.NewInt(d)))
|
||||
tmp3.SetInt64(d)
|
||||
accum.Sub(accum, tmp3.Mul(denom, tmp3))
|
||||
accum.Mul(accum, ten)
|
||||
numer.Mul(numer, ten)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user