为了账号安全,请及时绑定邮箱和手机立即绑定

平方和平方根的整数函数

平方和平方根的整数函数

Go
慕容708150 2021-09-10 17:23:09
当前,math.Pow()并math.sqrt采用float64类型参数。我们有接受int类型参数的等效函数吗?
查看完整描述

3 回答

?
波斯汪

TA贡献1811条经验 获得超4个赞

如果您的返回值是浮点数,您可以使用 math 包中的 Ceil 或 Floor,然后将其转换为 int。


n := 5.5

o := math.Floor(n)

p := int(math.Pow(o, 2))


fmt.Println("Float:", n)

fmt.Println("Floor:", o)

fmt.Println("Square:", p)


5.5

5

25

请记住,Floor 仍然返回一个 float64,因此您仍然希望将它包装在 int() 中


查看完整回答
反对 回复 2021-09-10
?
子衿沉夜

TA贡献1828条经验 获得超3个赞

只需使用 int 值创建一个 float64 对象。示例如果 int = 10。


var x float64 = 10

var b = math.Pow(2, x) 


查看完整回答
反对 回复 2021-09-10
?
喵喔喔

TA贡献1735条经验 获得超5个赞

在 SO 上的其他地方描述了快速近似算法,例如this one。如果性能很重要,那么将其中一种 C 算法移植到 Go 可能是值得的。


查看完整回答
反对 回复 2021-09-10
  • 3 回答
  • 0 关注
  • 201 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信