Golang 用于检查给定的数字是否是有限的

Golang 用于检查给定的数字是否是有限的

在本文中,我们将编写一个使用Go语言编写的程序,用于检查给定的数字是否是有限的。该程序使用IsInf()和IsNaN()库函数来检查数字是否是有限的。

语法

func IsInf(f float64, sign int) bool

IsInf()函数存在于math包中。该函数接受两个参数,一个是我们希望检查的浮点数,另一个是符号。符号是一个整数,可以大于、小于或等于零。如果符号大于零,则此函数检查浮点数是否为正无穷大;如果符号小于零,则检查负无穷大。此外,如果符号等于零,则该函数检查给定的数字是否是有限的,并根据结果返回一个布尔变量。

func IsNaN(x float64) (is bool)

isNaN()函数在math包中。这个函数以浮点数作为参数,并检查该数是否为数字或非数字。如果给定的数字是一个数字,则返回true。相反,如果提供的数字是NaN,则返回false。

步骤

  • 步骤1 - 首先,我们需要导入fmt和math包。

  • 步骤2 - 然后,创建一个名为isFinite()的函数,它以浮点数作为参数并返回一个布尔值。

  • 步骤3 - 此函数使用IsInf()和IsNaN()函数来检查给定的数字是否有限。

  • 步骤4 - 现在,开始main()函数。初始化一个变量num和result来保存要检查的数字和一个布尔变量来存储结果。我们在第一个示例中使用四个示例,将num初始化为1.23并在屏幕上打印出来。

  • 步骤5 - 现在,为了检查数字是否有限,将数字和符号一起作为参数传递给isFinite()函数,并将结果存储在result变量中。

  • 步骤6 - 如果函数得到的值为true,则打印给定的数字是有限的,否则打印数字是无限的。

  • 步骤7 - 用一些更多的示例重复该过程。还使用NaN和负实数检查结果。

示例

在这个示例中,我们将使用Go编程语言中的内部函数来检查提供的数字是否有限。我们将创建一个函数,它将接受要检查的数字作为参数,并在执行相应的计算后返回适当的结果。

package main
import (
   "fmt"
   "math"
)
func isFinite(num float64) bool {
   return !math.IsInf(num, 0) && !math.IsNaN(num)
}
func main() {
   var num float64
   var result bool

   // example 1
   num = 1.23
   fmt.Println("Example 1")
   fmt.Println("The number to be checked is:", num)
   result = isFinite(num)
   if result {
      fmt.Println("The given number is finite")
   } else {
      fmt.Println("The number is not finite")
   }
   fmt.Println()

   // example 2
   num = 1
   fmt.Println("Example 2")
   fmt.Println("The number to be checked is:", num)
   result = isFinite(num)
   if result {
      fmt.Println("The given number is finite")
   } else {
      fmt.Println("The number is not finite")
   }
   fmt.Println()

   // example 3
   fmt.Println("Example 3")
   fmt.Println("The number to be checked is: NaN")
   result = isFinite(math.NaN())
   if result {
      fmt.Println("The given number is finite")
   } else {
      fmt.Println("The number is not finite")
   }
   fmt.Println()

   // example 4
   num = -2.34
   fmt.Println("Example 4")
   fmt.Println("The number to be checked is:", num)
   result = isFinite(num)
   if result {
      fmt.Println("The given number is finite")
   } else {
      fmt.Println("The number is not finite")
   }
}

输出

Example 1
The number to be checked is: 1.23
The given number is finite

Example 2
The number to be checked is: 1
The given number is finite

Example 3
The number to be checked is: NaN
The number is not finite

Example 4
The number to be checked is: -2.34
The given number is finite

结论

我们成功地编译并执行了一个Go语言程序,用于检查给定的数字是否是有限的。我们在这个程序中实现了四种不同的示例。该程序使用一个单独的函数,该函数接受要检查的变量作为参数,并返回布尔结果,以便我们可以相应地打印输出。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程