循环使用变量,使用特定步长更改每个循环计算

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了循环使用变量,使用特定步长更改每个循环计算相关的知识,希望对你有一定的参考价值。

我正在使用一个为step添加值(dist)的循环。将step添加到dist后,我想在下面的计算中使用它,它提供值c。然后,distc都应该在输出文件中彼此相邻的两列中列出。

如果我使用下面的代码,它至少可以在输出文件中列出dist的值。

dist=0
  do while (dist < rim)
   dist=dist+step
   c=0.5*(cl-cr)*erfc((dist)/(2*sqrt(t*d)))+cr
   write(1,'(1f20.0)')dist*1E+06
  enddo

如果我用下面的命令替换write命令,它将不会列出两个不错的列,但不知何故混合两者。

  write(1,'(1f20.0,1f15.5)')dist*1E+06,c

这是一个与循环中写入命令的定位有关的问题,还是与告诉写入值的格式有关?

答案

您应该在它们之间添加一个空格并重新检查:

write(*,'(F20.0,1X,F15.5)') dist*1E+06, c

还要考虑将结果写入文件的准确性。

以上是关于循环使用变量,使用特定步长更改每个循环计算的主要内容,如果未能解决你的问题,请参考以下文章