>>976
型変換にまつわる糞仕様で、通常の計算式だと乗算と割り算は優先度等しいからこの場合式の左から優先なんだけど
浮動小数を扱うfloat型と整数のlong型が混在する式の場合、一致する型同士での計算が演算子の記述順よりも優先されてる

A 1.0*1/3=0
B 1*1.0/3=0.333

この書き方にも実は問題があってAとBは厳密に言うとA=Bではない

1.0は浮動小数点符号付きだからfloat型、1は整数のlong型、それぞれ違う数値型で2つは確保される

コンピューター内部では1.0と1は型が違うから特にC++とか型にうるさい言語ではこの2つはそのまま計算に使えない、だから型変換が必要になる

意図しない型変換を避けるためにもfloatとlongを混在させず、上記式も

A=Bの場合 1.0*1.0/3.0=0.333

こう書くと曖昧さがなくなって当然同じ計算結果が得られる
この型変換の糞仕様の糞部分は、型変換知らないと式を括弧で囲っても解決されない点にあって

1.1*(1/3)=0.

これがなぜこうなるか理解できない人もいる可能性

要するに計算に用いる値は型を揃えて書いてください、整数型と浮動小数混ぜると計算結果違ってくる可能性あります