Вывод действительного числа на Fortran

#fortran #output

#Фортран #вывод

Вопрос:

объявили переменную:

КОЭФФИЦИЕНТ реального * 4

и тогда КОЭФФИЦИЕНТ = 2,25

Я хочу вывести 2.25

Попробовал F3.2

Любая помощь?

 WRITE (lu09,9315)FACTOR

9315 FORMAT (F4.2)
 

Комментарии:

1. Что случилось с тем, что вы пробовали? Не могу сказать, почему этого недостаточно.

2. @HighPerformanceMark, пожалуйста, прости меня за то, что я такой идиот, и я прощу тебя за то, что ты так со мной обращаешься. — к вопросу добавлен простой код. Мой вывод .02.

3. Какой вывод есть из исправленного кода?

4. Я считаю, что ваша информация верна, @wallyk. Я думаю, что в моей программе есть еще одна проблема, потому что, если я напишу в std out, он отобразится как 2.25, как и должно быть, используя ваш ответ. Я хотел бы поблагодарить вас за вашу помощь.

5. Добро пожаловать. Спасибо, что приняли мой ответ.

Ответ №1:

Формат Fortran F3.2 будет выводить числа до .99 , но все, что больше, не подойдет. Если вы имеете в виду, что хотите получить 3 цифры перед десятичной дробью, измените ее на F6.2 .

Первое число формата — это общая ширина поля, включая десятичные и дробные цифры.

Чтобы отображался формат 2.25, ширина формата должна быть не менее 4: F4.2

Комментарии:

1. Я изменил его на F4.2, а также попробовал F5.2, но мой вывод .02. Что я делаю не так?

2. @KathyB.: Я вложил в вопрос то, что смог понять из ваших комментариев, но это слишком сложно для отладки. Пожалуйста, попробуйте простое format с простым write только с одной переменной.

3. @wallyk Я упростил код и добавил к вопросу. Спасибо.

Ответ №2:

Формат f0.2 дает желаемый результат, как показано ниже. Он записывает число с двумя цифрами после десятичной запятой и столько цифр перед десятичной запятой, сколько необходимо.

 program xwrite
implicit none
real*4 :: factor = 2.25
write (*,"(f0.2)") factor
end program xwrite
! output:
! 2.25