В настоящее время я возлюсь с Фортраном 77 и столкнулся с проблемой, которую, похоже, не могу понять.Я пытаюсь прочитать из файла, который выглядит примерно так:
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)
Кажется, что все читается очень хорошо, за исключением последнего столбца.Когда я проверяю значение цены, скажем, например, для второй строки;вместо 56,95 я получаю что-то вроде 56,8999999999.
Теперь я понимаю, что у меня могут быть трейлинг 9 или еще много чего, потому что это не совсем точно, но не должно ли это быть немного ближе к 95 центам?Может быть, я что-то не так делаю, я не уверен.Надеюсь, я просто не застрял с моей программой, работающей так!Любая помощь с благодарностью!