私は現在FORTRAN77をいじっていて、理解できないような問題に遭遇しました。以下のようなファイルから読み込もうとしています。
000120 Description(s) here 18 7 10.15
000176 Description(s) here 65 20 56.95
...
各行の最後の列は金額です(100を超えることはありません)。以下のようなコードを使用してファイルを読み取ろうとしています
integer pid, qty, min_qty
real price
character*40 descrip
open(unit=2, file='inventory.dat', status='old')
read(2, 100, IOSTAT=iend) pid, descript, qty, min_qty, price
100 format(I11, A25, I7, I6, F5)
最後の列を除いて、すべてがうまく読まれているようです。たとえば、2行目の価格の値を確認すると、56.95を取得する代わりに、56.8999999999のようなものを取得します。
完全に正確ではないため、9が続く可能性があることは理解していますが、95セントに少し近づける必要がありますか?たぶん私が間違っていることがあるのか、よくわかりません。うまくいけば、私は自分のプログラムがこのように実行されていることに固執していません!どんな助けでも大歓迎です!