欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2020年12月17日 09:25:25   作者:autuan_liu  
這篇文章主要介紹了使用go求冪的幾種方法小結(jié),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

我就廢話(huà)不多說(shuō)了,大家還是直接看代碼吧~

/*
*  二分冪法 求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常見(jiàn)運(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("a<b的結(jié)果",c<d)
println("a!=b的結(jié)果",c!=d)
var e,f = true,false
println(e&&f)
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ò)誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • golang panic及處理機(jī)制

    golang panic及處理機(jī)制

    Go語(yǔ)言追求簡(jiǎn)潔優(yōu)雅,所以,Go語(yǔ)言不支持傳統(tǒng)的 try…catch…finally 這種異常,因?yàn)镚o語(yǔ)言的設(shè)計(jì)者們認(rèn)為,將異常與控制結(jié)構(gòu)混在一起會(huì)很容易使得代碼變得混亂,今天給大家介紹golang panic及處理機(jī)制,需要的朋友參考下吧
    2021-08-08
  • golang中http請(qǐng)求的context傳遞到異步任務(wù)的坑及解決

    golang中http請(qǐng)求的context傳遞到異步任務(wù)的坑及解決

    這篇文章主要介紹了golang中http請(qǐng)求的context傳遞到異步任務(wù)的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • Golang設(shè)計(jì)模式之外觀模式講解和代碼示例

    Golang設(shè)計(jì)模式之外觀模式講解和代碼示例

    外觀是一種結(jié)構(gòu)型設(shè)計(jì)模式, 能為復(fù)雜系統(tǒng)、 程序庫(kù)或框架提供一個(gè)簡(jiǎn)單 (但有限) 的接口,這篇文章就給大家詳細(xì)介紹一下Golang的外觀模式,文中有詳細(xì)的代碼示例,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-06-06
  • 10個(gè)可以?xún)?yōu)化代碼的Go語(yǔ)言技巧分享

    10個(gè)可以?xún)?yōu)化代碼的Go語(yǔ)言技巧分享

    這篇文章主要為大家詳細(xì)介紹了10個(gè)可以?xún)?yōu)化代碼的Go語(yǔ)言技巧,從而讓我們的代碼更加優(yōu)雅,文中的示例代碼講解詳細(xì),需要的小伙伴可以參考下
    2024-01-01
  • go mock模擬接口的實(shí)現(xiàn)

    go mock模擬接口的實(shí)現(xiàn)

    本文主要介紹了go mock模擬接口的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • linux中用shell快速安裝配置Go語(yǔ)言的開(kāi)發(fā)環(huán)境

    linux中用shell快速安裝配置Go語(yǔ)言的開(kāi)發(fā)環(huán)境

    相信每位開(kāi)發(fā)者都知道選擇一門(mén)開(kāi)發(fā)語(yǔ)言,免不了需要安裝配置開(kāi)發(fā)環(huán)境,所以這篇文章給大家分享了linux下使用shell一鍵安裝配置GO語(yǔ)言開(kāi)發(fā)環(huán)境的方法,有需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。
    2016-10-10
  • uber go zap 日志框架支持異步日志輸出

    uber go zap 日志框架支持異步日志輸出

    這篇文章主要為大家介紹了uber go zap 日志框架支持異步日志輸出示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • Golang中的自定義函數(shù)類(lèi)型詳解

    Golang中的自定義函數(shù)類(lèi)型詳解

    在 Golang 中,type 關(guān)鍵字用于定義自定義類(lèi)型,函數(shù)也是一種數(shù)據(jù)類(lèi)型,因此可以使用 type 關(guān)鍵字來(lái)定義函數(shù)類(lèi)型,本文就給大家詳細(xì)介紹一下Golang中的自定義函數(shù)類(lèi)型,需要的朋友可以參考下
    2023-07-07
  • golang 解析word文檔操作

    golang 解析word文檔操作

    這篇文章主要介紹了golang 解析word文檔操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • 一文詳解Golang的函數(shù)特性

    一文詳解Golang的函數(shù)特性

    函數(shù)是?Golang?中非常重要的組成部分之一,它們提供了代碼的可重用性和組織性。在本文中,我們將深入了解?Golang?函數(shù)的多個(gè)方面,希望對(duì)大家有所幫助
    2023-04-04

最新評(píng)論