РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
360 of 1593 menu

Метод big.Int.Mul

Метод big.Int.Mul выполняет умножение двух больших целых чисел и возвращает их произведение. Первым параметром метод принимает множимое, вторым — множитель. Результат умножения сохраняется в вызывающем объекте, который также возвращается для удобства цепочных вызовов. Метод работает с числами произвольной точности, что позволяет выполнять умножение чисел, выходящих за пределы стандартных целочисленных типов Go.

Синтаксис

func (z *big.Int) Mul(x, y *big.Int) *big.Int

Пример

Давайте умножим два больших целых числа:

package main import ( "fmt" "math/big" ) func main() { x := big.NewInt(123456789) y := big.NewInt(987654321) res := new(big.Int).Mul(x, y) fmt.Println(res) }

Результат выполнения кода:

"121932631112635269"

Пример

Давайте перемножим большие числа, которые не помещаются в 64-битный целочисленный тип:

package main import ( "fmt" "math/big" ) func main() { a := new(big.Int) a.SetString("9223372036854775807", 10) // MaxInt64 b := new(big.Int) b.SetString("9223372036854775807", 10) // MaxInt64 res := new(big.Int).Mul(a, b) fmt.Println(res) }

Результат выполнения кода:

"85070591730234615847396907784232501249"

Пример

Давайте используем цепочку вызовов для последовательного умножения:

package main import ( "fmt" "math/big" ) func main() { x := big.NewInt(2) y := big.NewInt(3) z := big.NewInt(4) res := new(big.Int).Mul(x, y).Mul(res, z) fmt.Println(res) }

Результат выполнения кода:

"24"

Смотрите также

  • метод big.Int.Add,
    который выполняет сложение больших целых чисел
  • метод big.Int.Sub,
    который выполняет вычитание больших целых чисел
  • метод big.Int.Div,
    который выполняет деление больших целых чисел
  • метод big.Int.Exp,
    который выполняет возведение в степень больших целых чисел
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить