ホームページ  >  記事  >  バックエンド開発  >  math.Round 関数を使用して、浮動小数点数を指定された精度に丸めます

math.Round 関数を使用して、浮動小数点数を指定された精度に丸めます

PHPz
PHPzオリジナル
2023-07-24 23:22:591478ブラウズ

math.Round 関数を使用して浮動小数点数を指定された精度に丸める

浮動小数点数の計算を実行するとき、多くの場合、結果を指定された精度に丸める必要があります。 Go 言語の数学パッケージには Round 関数が用意されており、この関数を簡単に実装できます。この記事では、 math.Round 関数を使用して浮動小数点数を指定された精度に丸める方法とコード例を紹介します。

math.Round 関数のプロトタイプは次のとおりです。

func Round(x float64) float64

Round 関数は、浮動小数点数 x をパラメータとして受け取り、の結果を最も近い整数に丸めた値を返します。結果は、x と同じ型の浮動小数点数になります。 x が整数の場合、Round 関数は x を変更せずに直接返します。 x が半整数 (つまり、小数部分が 0.5) の場合、Round 関数はそれを最も近い偶数に丸めます。それ以外の場合、Round 関数は x を最も近い整数に丸めます。

上記の Round 関数に加えて、数学パッケージは RoundToEven 関数も提供します。これは基本的に Round 関数と同じように動作します。唯一の違いは、半整数の場合、RoundToEven 関数はそれらを最も近い偶数に丸めることです。この記事では、Round関数の使い方を中心に説明します。

これは、 math.Round 関数を使用して浮動小数点数を指定された精度に丸める方法を示す簡単な例です:

package main

import (
    "fmt"
    "math"
)

func main() {
    x := 3.14159
    precision := 2

    rounded := math.Round(x*math.Pow(10, float64(precision))) / math.Pow(10, float64(precision))

    fmt.Printf("原始值:%f
", x)
    fmt.Printf("四舍五入到%d位小数:%f
", precision, rounded)
}

上の例では、浮動小数点数を定義します。 x および A 精度の精度。まず x に 10 の精度乗を乗算し、次に Round 関数を呼び出して結果を丸めます。最後に、結果を 10 の精度乗で除算して、元の精度に戻します。

上記のコードを実行すると、出力は次のようになります:

元の値: 3.141590
小数点第 2 位に四捨五入: 3.14

ご覧のとおり、正常に実行されました。浮動小数点数 3.14159 を小数点第 2 位に四捨五入します。

概要:
math.Round 関数を使用すると、浮動小数点数を指定された精度に簡単に丸めることができます。 Round 関数を使用する前に、正確な計算の精度を確保するために、適切な乗算と除算の演算を実行する必要があります。より複雑なシナリオの場合は、実際のニーズに応じて調整および拡張することもできます。

この記事が math.Round 関数を使用して浮動小数点数を四捨五入する際に役立つことを願っています。

以上がmath.Round 関数を使用して、浮動小数点数を指定された精度に丸めますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。