回 帖 发 新 帖 刷新版面

主题:本人学的不好,麻烦大家帮我编一下这个程序

台站 四川(内江 56083);这是第一个文件名称为1.txt
v01000    V04001    V04002    V04003    V13201    
56038,1960,10,1,98,
56038,1960,10,2,115,
56038,1960,10,3,18,
56038,1960,10,4,60,
56038,1960,10,5,20,
56038,1960,10,6,32700,
56038,1960,10,7,121,
56038,1960,10,8,22,
56038,1960,10,9,12,
56038,1960,10,10,2,
56038,1960,10,11,20,
56038,1960,10,12,60,
56038,1960,10,13,8,
56038,1960,10,14,32700,
56038,1960,10,15,25,
56038,1960,10,16,6,
56038,1960,10,17,32700,
56038,1960,10,18,22,
56038,1960,10,19,32700,
56038,1960,10,20,0,
56038,1960,10,21,0,
56038,1960,10,22,32700,
56038,1960,10,23,17,
56038,1960,10,24,0,
56038,1960,10,25,0,
56038,1960,10,26,0,
56038,1960,10,27,32700,
56038,1960,10,28,32700,
56038,1960,10,29,0,
56038,1960,10,30,32700,
56038,1960,10,31,0,这是部分第二个文件叫做2.txt,32700当做0算,我需要得到一个将五天的数据相加的程序,并且输出在一行里面。谢谢大家了

回复列表 (共3个回复)

沙发

我试试看啊,编好后发给你。可以告诉我你这个观测的是什么气象要素吗、我觉得这个例子很好,可以作为fortran文件应用的一个典型例子。

板凳


为什么不用matlab处理呢?直接导入即可,然后再进行计算或者输出成Fortran更方便读取的格式

3 楼

program sum5
  implicit none
  type::calcu
    character(len=10)::code
    integer::year
    integer::month
    integer::day 
    real::i,datumn
  end type calcu

  integer,parameter::num=30
  type(calcu)::m(num)
  integer::i
  integer::sum
  
  open(unit=10,file='data1.txt')
  open(unit=20,file='result.dat')
  !用循环读入每天的数据
  read(10,*) 
  do i=1,num
    read(10,*) m(i)%code,m(i)%year,m(i)%month,m(i)%day,m(i)%datumn
    if(m(i)%datumn==32700) then
       m(i)%datumn=0
    end if
  end do
  !计算5天之和
  do i=1,num,5
    sum=m(i)%datumn+m(i+1)%datumn+m(i+2)%datumn+m(i+3)%datumn+m(i+4)%datumn
  write(20,"(I5)",advance='no') sum
  end do
  close(10)
  close(20)


  stop
end

我来回复

您尚未登录,请登录后再回复。点此登录或注册