Функция big.NewRat

Функция big.NewRat создает новое рациональное число типа *big.Rat, принимая в качестве аргументов числитель и знаменатель. В первый параметр передается числитель (тип int64), во второй параметр передается знаменатель (тип int64). Функция возвращает указатель на big.Rat, представляющий собой дробь числитель/знаменатель. Результат автоматически сокращается до несократимой дроби.

Синтаксис

gobig.NewRat(a, b int64) *big.Rat

Пример

Давайте создадим рациональное число 3/4 и выведем его:

gopackage main

import (
  "fmt"
  "math/big"
)

func main() {
  r := big.NewRat(3, 4)
  fmt.Println(r)
}

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

go3/4

Пример

Давайте создадим рациональное число 6/8 и убедимся, что оно автоматически сократится до 3/4:

gopackage main

import (
  "fmt"
  "math/big"
)

func main() {
  r := big.NewRat(6, 8)
  fmt.Println(r)
}

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

go3/4

Пример

Давайте создадим рациональное число с отрицательным числителем и выполним с ним арифметическую операцию:

gopackage main

import (
  "fmt"
  "math/big"
)

func main() {
  r1 := big.NewRat(-2, 3)
  r2 := big.NewRat(1, 6)
  res := new(big.Rat).Add(r1, r2)
  fmt.Println(res)
}

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

go-1/2

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

  • функцию big.NewInt,
    которая создает новое целое число
  • функцию big.NewFloat,
    которая создает новое число с плавающей точкой
  • метод big.Rat.SetFrac,
    который устанавливает значение дроби из числителя и знаменателя
  • метод big.Rat.FloatString,
    который возвращает десятичное представление рационального числа