在Fortran的新文件中读取两个文件并打印相同的值

时间:2018-02-17 09:36:27

标签: fortran

我正在尝试从两个文件中读取值,并在新(第三个)文件中只写入相同的值。我可以使用任何代码或功能吗?我试过的是用DO语句读取两个文件,并将它们命名为variable1(i)variable2(j),但我认为比较它们对我来说并不容易,这对我来说并不适用variable1(i) = variable (j)

示例:

文件1:

a1,b1,c1,d1,e1,a2,b2,c2,d2,e2,.........
f(a1),f(b1),f(c1),....... 

显然我不知道这个功能,我只知道结果。

文件2:

e2,e2,c1,c1,c1,c1,a2,a1,..........

新文件3:

f(e2),f(e2),f(c1),f(c1),f(c1),f(a2),f(a1)......

这是我的代码,因为两个文件中的数据数量不同而发生错误

  real*8 refjd(64285),pha(64285)
  real*8 timejd(55436),epha(55436)
  real*8 phs

  format(47x,f10.2)
  open(4,file="neic56.out")
  do j=1,55436
  read(4,55)timejd(j)
  close(4)




  format(f10.2,1x,f8.4)
  open(3,file="74-17.out")
  do i=1,64285
  read(3,44)refjd(i),pha(i)
  close(3)
  end do

  if(timejd(j) .EQ. refjd(i)) then
  epha(j)=pha(i)
  phs=epha(j)/360.
  open(5,file="ejplphase.dat")
  write(5,66)phs
  end if
  format(f6.4)   



  end do
  end

1 个答案:

答案 0 :(得分:1)

可以完成这项工作的天真算法如下:

app.config

根据您的问题规格,可以进行一些改进以提高效率。