Fortran Coder

楼主: filwZ
打印 上一主题 下一主题

[数值问题] 关于求平均值的问题

[复制链接]

14

帖子

1

主题

0

精华

入门

F 币
55 元
贡献
33 点
板凳
 楼主| 发表于 2014-3-6 17:56:52 | 只看该作者
非常谢谢。。大神。

712

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
608 元
贡献
311 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

沙发
发表于 2014-3-6 17:21:19 | 只看该作者
本帖最后由 chuxf 于 2014-3-7 13:34 编辑

[Fortran] 纯文本查看 复制代码
Program www_fcode_cn
  Implicit None
  integer :: ierr
  integer :: i , year , mon , day
  integer :: yearlast , monlast , daylast , c
  real :: d , a
  Open( 12 , File = '57517(4年).txt' )
  Open( 13 , File = 'out.txt' )
  read(12,*)
  yearlast = -1
  monlast = -1
  daylast = -1
  a = 0.0
  c = 0
  Do
    Read( 12 , * , ioStat=ierr ) i , year , mon , day , d
    if ( ( ierr== 0 ) .and. (year == yearlast) .and. (mon == monlast) .and. ( (day>15)==(daylast>15) ) ) then !// 同一个半月
      if ( ( d > 12.0 ) .and. ( d < 3000.0 ) ) then
        a = a + d 
        c = c + 1
      end if
    else
      if( c> 0 ) then
        a = a / c
        write(13,*) yearlast , monlast , a , c
      end if
      a = 0.0
      c = 0
      if ( ( d > 12.0 ) .and. ( d < 3000.0 ) ) then
        c = 1
        a = d
      end if
    end if
    yearlast = year
    monlast = mon
    daylast = day
    if ( ierr /= 0 ) Exit
  End Do
  Close( 12 )
  Close( 13 )
End Program www_fcode_cn  
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-20 03:40

Powered by Tencent X3.4

© 2013-2024 Tencent

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