我希望FORTRAN WRITE语句的格式取决于某个变量。例如,我可以写:
write(*,'(3f15.3,3f9.2)') x,y,z,(var(i),i=1,nvari)
其中
nvari = 3
。但是,如果在某些情况下,我实际上有4个变量(即nvari = 4
)。我想写这样的东西:write(*,'(3f15.3,nvari(f9.2))') x,y,z,(var(i),i=1,nvari)
现在,
nvari
可以是任何东西,输出将按我喜欢的方式工作。我怎样才能让这样的东西发挥作用? 最佳答案
如果您使用的是“英特尔Fortran”,它有一个专门的扩展名——您可以在尖括号中包含一个现有变量作为说明符:
write(*,'(3f15.3,<nvari>f9.2)') x,y,z,(var(i),i=1,nvari)