Метод big.Rat.SetFrac
Метод big.Rat.SetFrac устанавливает значение рационального числа
путем деления числителя на знаменатель. Первым параметром метод
принимает числитель (указатель на big.Int), вторым — знаменатель
(также указатель на big.Int). Метод автоматически сокращает
дробь и возвращает указатель на само рациональное число,
что позволяет использовать его в цепочках вызовов.
Синтаксис
big.Rat.SetFrac(num, den *big.Int) *big.Rat
Пример
Давайте создадим рациональное число из числителя 3 и знаменателя 4:
package main
import (
"fmt"
"math/big"
)
func main() {
num := big.NewInt(3)
den := big.NewInt(4)
r := new(big.Rat).SetFrac(num, den)
fmt.Println(r)
}
Результат выполнения кода:
3/4
Пример
Метод SetFrac автоматически сокращает дробь.
Давайте создадим дробь 6/8, которая сократится до 3/4:
package main
import (
"fmt"
"math/big"
)
func main() {
num := big.NewInt(6)
den := big.NewInt(8)
r := new(big.Rat).SetFrac(num, den)
fmt.Println(r)
}
Результат выполнения кода:
3/4
Пример
Метод SetFrac также работает с отрицательными числами
и нулевым знаменателем (в этом случае будет паника):
package main
import (
"fmt"
"math/big"
)
func main() {
num := big.NewInt(-5)
den := big.NewInt(2)
r := new(big.Rat).SetFrac(num, den)
fmt.Println(r)
}
Результат выполнения кода:
-5/2
Смотрите также
-
метод
big.Rat.FloatString,
который преобразует рациональное число в строку с фиксированной точностью -
функцию
big.NewRat,
которая создает рациональное число из целых значений -
метод
big.Rat,
который представляет рациональное число с произвольной точностью -
метод
big.Float.Quo,
который выполняет деление чисел с плавающей точкой