整数と浮動小数点数の演算結果

広告

演算を行う場合、整数と整数、浮動小数点数と浮動小数点数だけではなくに整数と浮動小数点数に対して演算を行うことも可能です。ただし演算の結果得られる数値が整数になるか浮動小数点数になるかは注意が必要です。

下記にそれぞれの演算結果が整数になるか浮動小数点数になるかの一覧を示します。

左辺右辺演算結果
整数整数整数
整数浮動小数点数浮動小数点数
浮動小数点数整数浮動小数点数
浮動小数点数浮動小数点数浮動小数点数

このように演算子の左辺又は右辺のどちらかが浮動小数点数の場合は演算結果は浮動小数点数になります。

ここで注意が必要なのが整数を整数で除算した場合です。結果が整数となるため割り切れない場合は小数点以下が切り捨てられた整数となります。

除算の結果を浮動小数点数で取得したい場合には左辺又は右辺のどちらかを浮動小数点数にする必要があります。

サンプルプログラム

では簡単なプログラムで確認して見ます。

test5-1.rb

#! ruby -Ku

print("5 * 3 = ", 5 * 3, "¥n")
print("5 * 3.2 = ", 5 * 3.2, "¥n")
print("5.4 * 3 = ", 5.4 * 3, "¥n")
print("5.4 * 3.2 = ", 5.4 * 3.2, "¥n¥n")

print("5 / 3 = ", 5 / 3, "¥n")
print("5 / 3.2 = ", 5 / 3.2, "¥n")
print("5.4 / 3 = ", 5.4 / 3, "¥n")
print("5.4 / 3.2 = ", 5.4 / 3.2, "¥n¥n")

print("5 + 3 = ", 5 + 3, "¥n")
print("5 + 3.2 = ", 5 + 3.2, "¥n")
print("5.4 + 3 = ", 5.4 + 3, "¥n")
print("5.4 + 3.2 = ", 5.4 + 3.2, "¥n¥n")

print("5 - 3 = ", 5 - 3, "¥n")
print("5 - 3.2 = ", 5 - 3.2, "¥n")
print("5.4 - 3 = ", 5.4 - 3, "¥n")
print("5.4 - 3.2 = ", 5.4 - 3.2, "¥n¥n")

print("5 % 3 = ", 5 % 3, "¥n")
print("5 % 3.2 = ", 5 % 3.2, "¥n")
print("5.4 % 3 = ", 5.4 % 3, "¥n")
print("5.4 % 3.2 = ", 5.4 % 3.2, "¥n¥n")

print("5 ** 3 = ", 5 ** 3, "¥n")
print("5 ** 3.2 = ", 5 ** 3.2, "¥n")
print("5.4 ** 3 = ", 5.4 ** 3, "¥n")
print("5.4 ** 3.2 = ", 5.4 ** 3.2, "¥n")

上記のプログラムを「test5-1.rb」として保存します。文字コードはUTF-8です。そして下記のように実行して下さい。

演算子の優先順位

( Written by Tatsuo Ikura )