📜  在 Golang 中查找给定数的二进制指数

📅  最后修改于: 2021-10-25 02:59:17             🧑  作者: Mango

Go 语言为基本常量和数学函数提供内置支持,以在 math 包的帮助下对数字执行运算。您可以借助math 包提供的Logb()函数找到指定数字的二进制指数。因此,您需要在 import 关键字的帮助下在程序中添加一个数学包来访问 Logb()函数。

句法:

func Logb(a float64) float64
  • 如果在此函数传递 +Inf 或 -Inf,则此函数将返回 +Inf。
  • 如果在此函数传递 0,则此函数将返回 -Inf。
  • 如果在此函数传递 NaN,则此函数将返回 NaN。

示例 1:

// Golang program to illustrate how to find the
// binary exponent of the given number
  
package main
  
import (
    "fmt"
    "math"
)
  
// Main function
func main() {
  
    // Finding binary exponent 
    // of the given number
    // Using Logb() function
    res_1 := math.Logb(0)
    res_2 := math.Logb(1)
    res_3 := math.Logb(math.Inf(1))
    res_4 := math.Logb(math.NaN())
    res_5 := math.Logb(36)
  
    // Displaying the result
    fmt.Printf("Result 1: %.1f", res_1)
    fmt.Printf("\nResult 2: %.1f", res_2)
    fmt.Printf("\nResult 3: %.1f", res_3)
    fmt.Printf("\nResult 4: %.1f", res_4)
    fmt.Printf("\nResult 5: %.1f", res_5)
  
}

输出:

Result 1: -Inf
Result 2: 0.0
Result 3: +Inf
Result 4: NaN
Result 5: 5.0

示例 2:

// Golang program to illustrate how to find the
// binary exponent of the given number
  
package main
  
import (
    "fmt"
    "math"
)
  
// Main function
func main() {
  
    // Finding binary exponent
    // of the given number
    // Using Logb() function
    nvalue_1 := math.Logb(100)
    nvalue_2 := math.Logb(26)
    res := nvalue_1 + nvalue_2
    fmt.Printf("%.5f + %.5f = %.5f",
            nvalue_1, nvalue_2, res)
  
}

输出:

6.00000 + 4.00000 = 10.00000