「実数 (分数) 型に関する興味深い点がいくつかあります。この例から始めましょう。」

float f = 3 / 5;

「この計算の結果、f は… ゼロになります!」

「そうだ、リシがそんなことを言っていた」

「ああ、そうでしたか? 良かったです。繰り返しは非常に役に立ちます。」

「ここではエラーはありません。除算には 2 つの整数が含まれるため、余りは単純に無視されます。これが起こらないようにするには、除算の 2 つの数値のうち少なくとも 1 つが小数でなければなりません。」

「数値の 1 つが小数の場合、2 番目の数値がまず小数型に変換されてから、除算が実行されます。」

「この問題は次のように解決できます。」

小数の表記:
float f = 3.0f / 5.0f;
float f = 3.0f / 5;
float f = 3 / 5.0f;

「除算に変数が含まれる場合はどうなるでしょうか?」

「それでは、次のようにします。」

整数変数を小数値に変換します。
int a = 3, b = 5;
float f = (a * 1.0f) / b;
int a = 3, b = 5;
float f = a / (b * 1.0f);
int a = 3, b = 5;
float f = (a * 1.0f) / (b * 1.0f);
int a = 3, b = 5;
float f = (float) a / b;

「それはぎこちないですね。もっと便利な別の除算演算はないでしょうか?」

「いいえ。これですべてです。」

「わかりました。問題ありません。」