首頁 >後端開發 >Golang >為什麼 go 給我這個結果?

為什麼 go 給我這個結果?

王林
王林轉載
2024-02-10 12:48:091077瀏覽

为什么 go 给我这个结果?

php小編西瓜在這裡為大家解答一個常見問題:「為什麼go 給我這個結果?」Go語言是一種程式語言,具有高效、簡潔的特點,被廣泛應用於網路服務、雲端運算等領域。在使用Go語言進行開發時,有時會遇到一些意外的結果。這可能是因為程式碼邏輯問題、資料處理錯誤或某些特殊情況導致的。理解Go語言的特性和常見問題,能幫助開發者更好地解決和調試程序,提高開發效率。在接下來的文章中,我們將為大家解答一些常見問題,並分享一些解決方案和技巧。

問題內容

我正在製作一個程式來計算班級中男性和女性的百分比。但它給了我一個不正確的結果。

程式碼是:

package main
import {
    "fmt"
}

var total, mujeres, hombres float64

func main() {
    fmt.printf("número de mujeres:")
    fmt.scanln(&mujeres)

    fmt.printf("número de hombres:")
    fmt.scanln(&hombres)

    total = mujeres + hombres
    mujeres = (mujeres / total) * 100
    hombres = (hombres / total) * 100

    print("en al salón de clases hay ", mujeres, "% de mujeres y ", 
        hombres, "% de hombres")
}

輸入 50 的兩個數量時得到的輸出是:

En al salón de clases hay +5.000000+001% de mujeres y +5.000000+001% de hombres

我想知道是什麼原因導致這個問題以及如何解決它。

解決方法

它沒有給出錯誤的結果,而是以錯誤的格式給出了正確結果。 5.000000e 0015x102cdea26b4c3988e37d674b56660962a712eb235f530502820017cce1685312d59,等於 50

如果您希望它們的格式與預設格式不同,則需要指定,例如:

fmt.Printf("En al salón de clases hay %.1f%% du mujeres y %.1f%% du hombres\n",
    mujeres, hombres)

以上是為什麼 go 給我這個結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:stackoverflow.com。如有侵權,請聯絡admin@php.cn刪除