爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3648|回复: 7

[求助] 求助大神!fortran可以处理这种每行都不规律有多少个数据吗??

[复制链接]
发表于 2016-7-7 16:50:24 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
do  while(1)
    read(10,'(a)',iostat=ios) cLine
    !print*,cLine
    !pause
     do j=1,len_trim(cLine)
        if(cLine(j:j)==';')  then
          n=n+1
        endif
     enddo
    do j=1,len_trim(cLine)
        if(cLine(j:j)=='/'.or.cLine(j:j)==':'.or.cLine(j:j)==';'.or.cLine(j:j)==',') cLine(j:j)=' '
    enddo
    !print*,cLine
     do i=1,n-1
      read(cLine,*)yy,mm,dd,hh,mi,ss,mn,num(i)??

程序先把符号这些去掉,然后计算了一下分号的个数,这样可以确定有多少个预报值,目的是要把分好前的数据求和按整小时求和,现在确实很崩溃不知道怎么读入然后求和??


QQ截图20160707164334.png
密码修改失败请联系微信:mofangbao
发表于 2016-7-7 17:17:02 | 显示全部楼层

回帖奖励 +50 金钱

这个用excel处理起来更方便吧,楼主不妨试试
密码修改失败请联系微信:mofangbao
发表于 2016-7-7 22:08:10 | 显示全部楼层
建议用Python,简单很多。
密码修改失败请联系微信:mofangbao
发表于 2016-7-8 10:00:48 | 显示全部楼层
完全没看明白楼主要干什么,如果会楼上两位说的方法不妨试试
密码修改失败请联系微信:mofangbao
 成长值: 0
发表于 2016-7-8 11:01:51 | 显示全部楼层
read(cLine,*)yy,mm,dd,hh,mi,ss,mn,((num(i,j),j=1,2),i=1,n)
你试试这样的语句,隐式格式,每次read两个,一个read到n个数据(n个分号),然后把后面的加起来,如:print*,sum(num(1:n,2))表示的是屏幕输出后面那个数,当然记得将num数组定义为real型的
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2016-7-11 16:16:05 | 显示全部楼层
言深深 发表于 2016-7-8 11:01
read(cLine,*)yy,mm,dd,hh,mi,ss,mn,((num(i,j),j=1,2),i=1,n)
你试试这样的语句,隐式格式,每次read两 ...

真感谢你!然而我已经被多方打击说FORTRAN不适合处理这个了,转头MATLAB好了
密码修改失败请联系微信:mofangbao
发表于 2016-7-12 00:03:48 | 显示全部楼层
cat filename | awk '{print NF}'
密码修改失败请联系微信:mofangbao
 成长值: 0
发表于 2016-7-12 11:05:23 | 显示全部楼层
Inuyasha716 发表于 2016-7-11 16:16
真感谢你!然而我已经被多方打击说FORTRAN不适合处理这个了,转头MATLAB好了

好的
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表