我对fortran和编程(小经验)都是全新的。我在编写以下代码时遇到了困难。
我需要使用两个输入文件中的数据将数据存储在二维数组中 然后我需要确定两个文件的大小 然后需要从两个维度中选择一个变量的特定值的变量 然后计算平均值 最后将结果写入新的数据文件。
例如:
我已经阅读了几本书,但无法掌握我正在寻找的确切内容。你们中的任何人都能给我一些关于编码的见解吗?我真的很感谢你们。
答案 0 :(得分:0)
您的代码将如下所示:
program main
implicit none
real::height(100)
integer::i
open(unit=16, file='height.dat')
do i = 1, 100
read(16, *) height(i)
enddo
close(16)
open(unit=16, file='mean_height.dat')
write(16, *) sum(height)/100
close(16)
end program
此假定有一个名为height.dat
的文件,每行有一个高度值,总共100行。
它读取100个高度,然后将平均高度写入文件mean_height.dat
。
你显然必须明显地修改它。
例如,您不会知道文件中有100行,因此您需要为读入的值使用allocatable
数组:
program main
implicit none
real,allocatable::height(:)
integer::i, N
!Code that figures out how many lines there are
!...
allocate(height(N))
open(unit=16, file='height.dat')
do i = 1, N
这应该让你开始......理想情况下,你可以从一个比你描述的更简单的输入文件开始学习基础知识。