Golang 将一个数转换为有理数

Golang 将一个数转换为有理数

在本教程中,我们将看到如何使用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)

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

NewRat(a, b)返回一个*Rat对象,设置为分数a/b,其中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编程语言将数字转换为有理数的Golang代码。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程