Golang は人気のあるプログラミング言語ですが、その組み込みの整数除算演算子は結果を整数部分に直接切り捨てますが、初心者にとっては難しいかもしれません。では、Golang で整数の除算後に小数を取得するにはどうすればよいでしょうか?この記事では、Golang の整数の除算と小数演算について説明し、実践的な解決策を提供します。
Golang の整数除算
Golang では、整数除算演算子は「/」です。たとえば、5/2 演算の結果は 2 になります。この整数の切り捨て動作は、Golang の型システムによって決定されます。これは、除数と被除数が両方とも整数型であるため、結果も整数型である必要があるためです。
小数部を取得したい場合は、オペランドの 1 つを 5.0/2 などの浮動小数点型に変換できます。この場合、結果は 2.5 になります。
もう 1 つの解決策は、5/float64(2) などの「float64」型変換を使用することです。これにより、2.5 の結果も取得できます。
Golang 10 進演算
Golang では、10 進演算のデフォルトのタイプは「float64」タイプです。したがって、2 つの小数の加算、減算、乗算、除算には、「 」、「-」、「*」、および「/」演算子を直接使用できます。例:
var a, b, c, d float64 a = 5.0 b = 2.5 c = a + b // 结果为7.5 d = a * b // 结果为12.5
浮動小数点演算には精度の問題があるため、10 進演算を実行するときは精度の問題に注意する必要があることに注意してください。たとえば、次のような演算結果が得られます。
var a, b, c float64 a = 0.1 b = 0.2 c = a + b // 结果为0.30000000000000004
複雑な 10 進演算を行う場合は、Golang の組み込み「math」パッケージを使用する必要があります。このパッケージには、次のような一般的に使用される 10 進計算関数が含まれています。
カスタマイズされた小数除算関数 コードを記述する実際のプロセスでは、自分自身や他の人が使いやすくするために、いくつかの関数をカプセル化する必要がある場合があります。したがって、整数の除算の小数部の計算を実装する関数を作成できます。例:import "math" var a float64 a = math.Sin(1.0) // 求sin(1),结果为0.8414709848078965
以上がgolangの整数除算10進数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。