名前 題名 ▼ Mr.XRAYさん > >Delphi XE2 で実装された浮動小数点用レコードで計算結果の値をバイト値 > >で確認してみました. > > Double 型であれば,FormatFloat を使用すれば実際の値を確認できます. > 数学的な値は,197.935 です. > しかし,これがコンピュータによる計算の結果なのです. > 当然ですが,どちらも,小数点 2 桁で四捨五入する(丸めると) > 179.93 となります. > > > procedure TForm1.Button1Click(Sender: TObject); > var > a,b,c,d,e,f:Double; > strText : String; > begin > a:=389.7; > b:=94.4; > c:=30; > d:=0.35; > e:=(a+b+c)*d; //(1) > f:=a*d+b*d+c*d; //(2) > > StrText := FormatFloat('000.0000000000000000', e) + sLineBreak + > FormatFloat('000.0000000000000000', f); > MessageBox(Handle, PChar(strText), '結果', MB_OK); > end; > GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link