floatやdoubleといった浮動小数型のデータは2のべき乗で表現されるため、10進数の値全てを正確に表すことはできず、近似値になります。そのため、正しく表すことができる精度があり、10進数の値からは誤差があります。HP ANSI C++/C では浮動小数はthe IEEE floating-point standard, ANSI/IEEE 754-1985 に従っております。
また、11.00(HP-UX PA_RISC)と11.31(HP-UX IPF)ではCPUが異なります。それによりハードウエア(CPU)のレベルで浮動小数演算が異なります。ハードウェアが異なるため、以前とまったく同じ結果にすることはできません。浮動小数の演算は誤差と精度があることを念頭にプログラムのロジックを組む必要があります。
【確認済みの対象OS】HP-UX
【カテゴリー】トラブルシューティング