C# の整数除算

Muhammad Maisam Abbas 2023年12月11日
C# の整数除算

このチュートリアルでは、C# で整数除算を実行する方法について説明します。

C# で整数除算を実装する

整数除算は C# の基本的なプロパティです。整数変数を別の整数変数で割ると、別の整数変数が返されます。

このプロパティは、分子が分母で完全に割り切れない場合でも保持されます。C# での分割のこのプロパティは、次のコードスニペットで示されています。

int numerator = 14;
int denominator = 3;
float ans = numerator / denominator;
Console.WriteLine(ans);

出力:

4

出力は、整数 14 を整数 3 で除算し、float 変数内に格納した場合の結果を示しています。ご存知のように、分母は分子を完全に分割するわけではなく、答えは 4.66 であるはずです。

多くのデータが失われているように見えますが、整数除算には、浮動小数点除算や 10 進除算よりも利点があります。整数除算は、他のタイプの除算よりもはるかに高速で計算効率が高くなります。

ここで注意すべきもう 1つの点は、実際の問題のほとんどは、浮動小数点または 10 進除算ではなく、整数除算を必要とすることです。整数除算がない場合は、浮動小数点または 10 進除算の後で、浮動小数点値を手動で整数に丸める必要があります。

これにより、すでに高価で低速な 10 進除算操作に余分なオーバーヘッドが追加されます。

浮動小数点または 10 進除算ではなく、整数除算が必要な 1つの例は、数値システム変換です。この場合、各桁の残りとともに整数除算を計算する必要があります。

整数除算がない場合、最初に浮動小数点除算を整数にキャストしてから、残りを再計算する必要があります。

除算の正確な浮動小数点結果が必要な場合は、浮動小数点除算を使用できます。前の整数除算を float 除算に変換するには、numerator または denominator のいずれかのデータタイプを float に変更する必要があります。

次のコードスニペットは、C# で float 除算を実行する方法を示しています。

float numerator = 14;
int denominator = 3;
float ans = numerator / denominator;
Console.WriteLine(ans);

出力:

4.6666667

上記のコードで float 除算を実行するために、numerator のデータタイプを float に変更しました。次のコードスニペットは、denominator のデータタイプを float に変更するだけで同じ結果が得られることを示しています。

int numerator = 14;
float denominator = 3;
float ans = numerator / denominator;
Console.WriteLine(ans);

出力:

4.6666667

浮動小数点演算と 10 進除算演算は計算コストが高くなりますが、実行中に有用な情報が失われることはありません。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

関連記事 - Csharp Integer