Go语言程序将数字转换为有理数


在本教程中,我们将了解如何使用 Go 编程语言将数字转换为有理数。

有理数是实数的一种,其形式为 p/q,其中 q 不等于零。任何分母不为零的分数都是有理数。一些有理数的例子有 1/2、1/5、3/4 等。

语法

funcNewRat(a, b int64) *Rat
NewRat creates a new Rat with numerator a and denominator b

Syntax for Scanln:
Func Scanln(a…interface{}) (n int, err error)

math/big 包实现了任意精度算术(大数)。

NewRat(a, b) 返回一个设置为分数 a/b 的 *Rat,其中 a 和 b 是 int64 值

使用一个输入将数字转换为有理数

算法

步骤 1 - 导入 fmt 包和 math/big 包

步骤 2 - 开始函数 main()

步骤 3 - 声明 NewRat 函数

步骤 4 - 使用值初始化公式

步骤 5 - 使用 fmt.Println() 在屏幕上打印有理数

示例

此示例演示如何使用一个输入将数字转换为有理数

package main // import the fmt and math/big package // fmt package provides the function to print anything import ( "fmt" "math/big" ) func main() { fmt.Println("Golang Program to convert a number into a rational number") // NewRat creates a new Rat with numerator a and denominator b r := new(big.Rat) //use the Sscan function so that it returns two //values: a string and an error _, err := fmt.Sscan("2.5", r) //if statement to check for an invalid request if err != nil { //and return an error if the request is invalid fmt.Println("error scanning value:", err) } else { // Print the rational number fmt.Println("The rational number is",r) } }

输出

Golang Program to convert a number into a rational number
The rational number is 5/2

代码描述

  • 在上面的程序中,我们首先声明包 main。

  • 我们导入了包含 fmt 包文件的 fmt 包,并且还导入了 math/big 包以实现大数。

  • 现在开始函数 main()

  • 声明 NewRat 函数,该函数使用分子和分母创建一个新的有理数。

  • 接下来,使用要转换为有理数的数值初始化公式。

  • 在 - _, err := fmt.Sscan("2.5", r) - 这行中,调用 Sscan() 函数,该函数成功返回扫描到的数字,并在存在错误时返回错误。

  • 接下来 - if err != nil { - 如果有任何错误,则执行此行。

  • 最后,我们使用 fmt.Println() 在屏幕上打印有理数。

使用 2 个输入将数字转换为有理数

算法

步骤 1 - 导入 fmt 包和 math/big 包

步骤 2 - 开始函数 main()

步骤 3 - 声明 NewRat 函数

步骤 4 - 使用值初始化公式

步骤 5 - 调用 Scanln() 函数扫描、读取和存储输入。

步骤 6 - 使用 fmt.Println() 在屏幕上打印有理数。

示例

此示例演示如何使用 2 个输入将数字转换为有理数

// Including the main package package main // Importing fmt and math/big import ( "fmt" "math/big" ) // Calling main func main() { fmt.Println("Golang Program to convert a number into a rational number") // NewRat creates a new Rat with numerator a and denominator b r := big.NewRat(6, 8) // Calling Scanln() function for // scanning and reading the input fmt.Scanln(r) // Printing the result fmt.Println("The rational number is",r) }

输出

Golang Program to convert a number into a rational number
The rational number is 3/4

代码描述

  • 在上面的程序中,我们首先声明包 main。

  • 我们导入了包含 fmt 包文件的 fmt 包,并且还导入了 math/big 包以实现大数。

  • 现在开始函数 main()

  • 声明 NewRat 函数,该函数使用分子和分母创建一个新的有理数。

  • 接下来,使用要转换为有理数的数值,将其应用于 NewRat 公式。

  • 调用 Scanln() 函数扫描和读取输入,并将输入存储在变量 r 中。

  • 最后,使用 fmt.Println() 在屏幕上打印有理数。

结论

在以上两个示例中,我们已成功编译并执行了 Go 语言代码,使用 Go 编程语言将数字转换为有理数。

更新于: 2022年12月9日

404 次查看

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告