Я не думал, что мне придется написать об этом, но нигде не могу найти хотя бы пример вычитания больших чисел
Итак, у меня есть два числа, и я хочу вычесть их, говорит библиотекачто существует только ограничение на объем памяти, однако, когда я пытаюсь вычесть два 256-битных числа, я получаю сообщение об ошибке.
Скажите, что с ним делать и как его решить?Я начал изучать Go, все кажется таким классным, но я постоянно сталкиваюсь с подобными вопросами.Что не так .......
package main
import (
"fmt"
"math/big"
)
func main() {
a := big.NewInt(113792089237316195423570985008687907853269984665640564039457584007908834671645)
b := big.NewInt(20277110887056303803699431755396003735040374760118964734768299847012543114150)
c := big.NewInt(0).Sub(a, b)
fmt.Println("c =", c)
}
Вывод:
*prog.go:9:18: constant 113792089237316195423570985008687907853269984665640564039457584007908834671645 overflows int64
prog.go:10:18: constant 20277110887056303803699431755396003735040374760118964734768299847012543114150 overflows int64*
Я использую go версию go1.12.4 linux / amd64
этот код вдетская площадка: https://play.golang.org/p/AY8Z8kkCRdg