Golang 简单用户输入产品数学问题,如 3*2*1 = 6

标签 go

我正在尝试创建一个小程序,允许用户输入一个整数,该整数将输出如下产品:

例如:

a = 5, 5*4*3*2 = 120
a = 4, 4*3*2*1 = 24  
a = 3, 3*2*1 = 6

有人可以提供指导,因为我一直在研究如何更有效地构建它。如果使用 Python,我可能会编写如下逻辑:

def a(num):
    x = 1
    for i in range (num):
            x=x*(i + 1)
    return x

print a(5)

最佳答案

您需要先了解 go 语言本身,然后您就可以轻松将您的 python 代码转换为 go 语言。

很少有go学习资源:


但无论如何,这是你的 python 代码的 go 版本:

func a(num int) int {
    x := 1
    for i := 0; i < num; i++ {
        x = x * (i + 1)
    }
    return x
}

func main() {
    fmt.Println(a(5)) // 120
    fmt.Println(a(4)) // 24
    fmt.Println(a(3)) // 6
}

工作 field :https://play.golang.org/p/glHwuMhTDYj

关于Golang 简单用户输入产品数学问题,如 3*2*1 = 6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53093087/

相关文章:

go - 为什么 go package code 没有 body?

go - 我怎样才能使这个对象映射在 Go 中更干燥和可重用?

json - 在 golang 中解码平面和嵌套的 json

go - 我们可以像在 python 中那样在 Go 中创建上下文管理器吗?

tcp - 在 Go 中的 EOF 上重新连接 TCP

go - 为什么 post 请求在 gin golang 中不起作用?

go - 正确等待全局变量初始化

go - 使用db.Create和db.FirstOrCreate将数据保存到数据库时, "ID"列的值为 "0"

go - 如何使用 golang 将 cpu 信息推送到 OpenTSDB 服务器

go - 使用go-sql-driver时如何区分连接错误和其他错误