この章では算術演算子について説明します。
特に数値を変数に入れる必要性がないのであれば
number1-number2は減算を行っているのですが、number1には5、number2には3が入っているので、この変数の値同士を引いています。
特に数値を変数に入れる必要性がないのであれば
特に数値を変数に入れる必要性がないのであれば
number1/number2は除算を行っているのですが、number1には5、number2には3が入っているので、この変数の値同士を割っています。
特に数値を変数に入れる必要性がないのであれば
number1%number2は剰余を行っているのですが、number1には5、number2には3が入っているので、この変数の値同士の割り算の余りを算出します。
特に数値を変数に入れる必要性がないのであれば
掛け算を行ってから足し算を行います。
これは算数の計算順序と同じです。
足し算から計算したい場合は
カッコを付けることで優先順位が掛け算より高くなります。
以下の例は先ほどの例を書き換えた例です。
一度計算結果を変数に入れてから、printfで出力しています。
次の例は型が違うデータ同士の計算の例です。
「結果は5.400000です」
「a+r」の部分でint型の変数とdouble型の変数を足しています。
このようにサイズの小さい型とサイズの大きい型を足すとサイズが大きい型に統一されてから計算されます。
サイズの大小は以下のようになります。
つまり、int型がdouble型に変換されてから足されます。
では次の例をみてみましょう。
そしてaがint型、gがlong型なので、精度の高いlong型に統一されます(つまり、計算する前からaはlong型に統一されます)。
そして、その結果をdouble型のrと足します。
long型とdouble型はどちらが精度が高いでしょうか?下を見ていただければわかりますが、double型のほうが高いですので「a*g」の結果である12はdouble型に変換されてから、3.567を足します。
つまり、式の中で変数の型が異なる時、一番大きい型(精度の高い型)に統一されます。