2 回答

TA貢獻1712條經(jīng)驗 獲得超3個贊
沒有 Go 運算符(“數(shù)學(xué)符號”)可以執(zhí)行此操作,但如果指數(shù)是常數(shù),您當然可以只寫x*xx^2 或x*x*xx^3。
如果指數(shù)不是常量而是整數(shù),計算 n^exp 的一種簡單方法是使用重復(fù)乘法,如下所示:
func pow(n float64, exp int) float64 {
if exp < 0 { // handle negative exponents
n = 1 / n
exp = -exp
}
result := 1.0
for i := 0; i < exp; i++ {
result *= n
}
return result
}
也就是說,我不確定您為什么要避免math.Pow使用它——它在標準庫中,而且速度更快、更通用。

TA貢獻1851條經(jīng)驗 獲得超3個贊
如果數(shù)字是整數(shù),那么這應(yīng)該有效:
package main
import (
"fmt"
)
func main() {
number := 4
power := 5
result := 1
for power != 0 {
result = result * number
power = power - 1
}
fmt.Println(result)
}
- 2 回答
- 0 關(guān)注
- 119 瀏覽
添加回答
舉報