Функция math.Inf

Функция math.Inf возвращает положительную или отрицательную бесконечность в зависимости от переданного знака. Первым параметром функция принимает целочисленное значение sign, которое определяет знак бесконечности: если sign >= 0 возвращается положительная бесконечность, если sign < 0 - отрицательная. Функция всегда возвращает значение типа float64.

Синтаксис

gomath.Inf(sign)

Пример

Давайте получим положительную и отрицательную бесконечность:

gopackage main

import (
  "fmt"
  "math"
)

func main() {
  positiveInf := math.Inf(1)
  negativeInf := math.Inf(-1)
  
  fmt.Println(positiveInf)
  fmt.Println(negativeInf)
}

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

go"+Inf"
"-Inf"

Пример

Давайте проверим, что значение бесконечности действительно является бесконечностью с помощью функции math.IsInf:

gopackage main

import (
  "fmt"
  "math"
)

func main() {
  inf := math.Inf(1)
  res := math.IsInf(inf, 1)
  
  fmt.Println(res)
}

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

gotrue

Пример

Давайте используем бесконечность в арифметических операциях:

gopackage main

import (
  "fmt"
  "math"
)

func main() {
  inf := math.Inf(1)
  res := inf + 100
  
  fmt.Println(res)
}

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

go"+Inf"

Пример

Давайте получим бесконечность с нулевым значением знака:

gopackage main

import (
  "fmt"
  "math"
)

func main() {
  inf := math.Inf(0)
  
  fmt.Println(inf)
}

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

go"+Inf"

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

  • функцию math.IsInf,
    которая проверяет, является ли число бесконечностью
  • функцию math.IsNaN,
    которая проверяет, является ли число нечисловым значением (NaN)
  • функцию math.NaN,
    которая возвращает нечисловое значение (NaN)
  • функцию math.MaxFloat64,
    которая возвращает максимальное значение типа float64