在go语言中实现二次函数(二次方程)计算的示例代码

2023-06-01 00:00:00 函数 语言 示例

如何用Golang进行二次计算。比如:这个程序从命令行接受两个浮点值,并使用二次方程计算根。它还检查输入值是否为浮点数。


代码示例:

 package main
 
 import (
         "fmt"
         "math"
         "os"
         "strconv"
 )
 
 func main() {
         b, err := strconv.ParseFloat(os.Args[1], 10)
         if err != nil {
                 fmt.Println("第一个输入参数必须是float类型的")
                 os.Exit(1)
         }
         c, err := strconv.ParseFloat(os.Args[2], 10)
         if err != nil {
                 fmt.Println("第二个输入参数必须是float类型的")
                 os.Exit(1)
         }
         
         fmt.Println("b : ", b)
         fmt.Println("c : ", c)
         
         // 计算多项式的根数
         // 利用二次方程计算x^2 + bx + c
         discriminant := b*b - 4.0*c
         d := math.Sqrt(discriminant)
         
         fmt.Printf("%0.6f\n", ((-b + d) / 2.0))
         fmt.Printf("%0.6f\n", ((-b - d) / 2.0))
 }


输出:

$./quadratic -1.0 -1.0
b : -1
c : -1
1.618034
-0.618034
$ ./quadratic -3.0 2.0
b : -3
c : 2
2.000000
1.000000

相关文章