佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > 使用go求冪的幾種方法小結(jié)

使用go求冪的幾種方法小結(jié)

熱門標(biāo)簽:AI電銷 百度競(jìng)價(jià)排名 Linux服務(wù)器 鐵路電話系統(tǒng) 服務(wù)外包 呼叫中心市場(chǎng)需求 網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站

我就廢話不多說了,大家還是直接看代碼吧~

/*
*  二分冪法 求x^n
 */
// 求整數(shù)冪
package main
import (
  "fmt"
  "math"
)
func main() {
  var x float64
  var n int
  fmt.Scanf("%f%d", x, n)
  fmt.Println(powerf(x, n))
  fmt.Println(powerf2(x, n))
  fmt.Println(powerf3(x, n))
  fmt.Println(math.Pow(x, float64(n)))
}
func powerf(x float64, n int) float64 {
  ans := 1.0
  for n != 0 {
    if n%2 == 1 {
      ans *= x
    }
    x *= x
    n /= 2
  }
  return ans
}
/*
*  遞歸法 求x^n
 */
func powerf2(x float64, n int) float64 {
  if n == 0 {
    return 1
  } else {
    return x * powerf2(x, n-1)
  }
}
/*
*  循環(huán)法 求x^n
 */
func powerf3(x float64, n int) float64 {
  ans := 1.0
  for n != 0 {
    ans *= x
    n--
  }
  return ans
}

測(cè)試案例:

補(bǔ)充:Go常見運(yùn)算操作

1、算術(shù)運(yùn)算符

// 運(yùn)算符 描述 實(shí)例

// + 相加 A + B 輸出結(jié)果 30

// - 相減 A - B 輸出結(jié)果 -10

// * 相乘 A * B 輸出結(jié)果 200

// / 相除 B / A 輸出結(jié)果 2

// % 求余 B % A 輸出結(jié)果 0

// ++ 自增 A++ 輸出結(jié)果 11

// -- 自減 A-- 輸出結(jié)果 9

2、關(guān)系運(yùn)算符

// 運(yùn)算符 描述 實(shí)例

// == 檢查兩個(gè)值是否相等,如果相等返回 True 否則返回 False。 (A == B) 為 False

// != 檢查兩個(gè)值是否不相等,如果不相等返回 True 否則返回 False。 (A != B) 為 True

// > 檢查左邊值是否大于右邊值,如果是返回 True 否則返回 False。 (A > B) 為 False

// 檢查左邊值是否小于右邊值,如果是返回 True 否則返回 False。 (A B) 為 True

// >= 檢查左邊值是否大于等于右邊值,如果是返回 True 否則返回 False。 (A >= B) 為 False

// = 檢查左邊值是否小于等于右邊值,如果是返回 True 否則返回 False。 (A = B) 為 True

3、邏輯運(yùn)算符

// 運(yùn)算符 描述 實(shí)例

// 邏輯 AND 運(yùn)算符。 如果兩邊的操作數(shù)都是 True,則條件 True,否則為 False。 (A B) 為 False

// || 邏輯 OR 運(yùn)算符。 如果兩邊的操作數(shù)有一個(gè) True,則條件 True,否則為 False。 (A || B) 為 True

// ! 邏輯 NOT 運(yùn)算符。 如果條件為 True,則邏輯 NOT 條件 False,否則為 True。 !(A B) 為 True

4、賦值運(yùn)算符

// i++ 自增

// i-- 自減

// i+=j 等價(jià)于 i = i + j

5、代碼

package main
import "fmt"
func main() {
var a,b = 10,11
fmt.Printf("a+b=%d\n",a+b)
fmt.Printf("a-b=%d\n",a-b)
fmt.Printf("a*b=%d\n",a*b)
fmt.Printf("a/b=%d\n",a/b)
fmt.Printf("a求余b=%d\n",a%b)
var c,d=10,9
println("a>b的結(jié)果",c>d)
println("a==b的結(jié)果",c==d)
println("ab的結(jié)果",cd)
println("a!=b的結(jié)果",c!=d)
var e,f = true,false
println(ef)
println(e||f)
println(!f)
var i,j = 1,0
i++
fmt.Println(i)
i--
fmt.Println(i)
j += i // 等價(jià)于 j = j+i
fmt.Println(j)
i++
j *= i
fmt.Println(j)
}

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 淺談Go語言中的次方用法
  • Golang 運(yùn)算符及位運(yùn)算詳解
  • golang指數(shù)運(yùn)算操作
  • golang切片反序?qū)嵗?/li>
  • Go語言實(shí)現(xiàn)牛頓法求平方根函數(shù)的案例

標(biāo)簽:蘭州 衡水 湖南 銅川 崇左 黃山 仙桃 湘潭

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《使用go求冪的幾種方法小結(jié)》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    平果县| 东港市| 南京市| 孝昌县| 达尔| 高碑店市| 新巴尔虎右旗| 峡江县| 金华市| 嘉荫县| 同德县| 三亚市| 寿阳县| 英吉沙县| 社旗县| 屯门区| 百色市| 宝兴县| 红安县| 元氏县| 虹口区| 开江县| 浪卡子县| 项城市| 天等县| 玉溪市| 天峨县| 理塘县| 天柱县| 咸丰县| 嘉定区| 乃东县| 金昌市| 日照市| 通辽市| 泰顺县| 读书| 鄂托克旗| 广安市| 鸡泽县| 荣成市|