爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4881|回复: 19

[求助] 【已解决】如何给这个程序加个循环

[复制链接]

新浪微博达人勋

发表于 2013-4-24 14:55:31 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 倔强的葱头 于 2013-4-28 14:20 编辑

有如下文件,
196101.txt,196102.txt,....196112.txt..196201.txt...196212.txt...197012.txt(每年12个文件,共10年,120个文件)
代码如下:
real dt(360,640)
character(len=20)nouse,form,name(12),outname(12)
do lm=1,12

if(lm.lt.10)then
write(form,"(i1)") lm
write(name(lm),*) "19610",trim(form),".txt"
write(outname(lm),*) "19610",trim(form),".xls"
else
write(form,"(i2)") lm
write(name(lm),*) "1961",trim(form),".txt"
write(outname(lm),*) "1961",trim(form),".xls"
endif

open(1,file=name(lm))
do i=1,6
read(1,*)nouse
enddo
do i=1,360
read(1,*)(dt(i,j),j=1,640)
enddo
close(1)

open(2,file=outname(lm))
do i=1,360
do j=1,640
if(dt(i,j).ne.-9999.0) write(2,"(3f8.1)") 72+(j-1)*0.1,18+360*0.1-i*0.1,dt(i,j)
enddo
enddo
close(2)

enddo
end

以上程序只能处理196101.txt...196112.txt 12个文件,如何能使其批量处理所有的文件,如何加一个循环。以下是失败的。。
real dt(360,640)
character(len=20)nouse,form,name(12),outname(12)
do iyear=0,100
do i=1,12
write(form,"(i1)") lm
write(name(lm),*) lm= iyear*100+i +196000,".txt"
write(outname(lm),*) lm= iyear*100+i +196000,".xls"
enddo
enddo

open(1,file=name(lm))
do i=1,6
read(1,*)nouse
enddo
do i=1,360
read(1,*)(dt(i,j),j=1,640)
enddo
close(1)

open(2,file=outname(lm))
do i=1,360
do j=1,640
if(dt(i,j).ne.-9999.0) write(2,"(3f8.1)") 72+(j-1)*0.1,18+360*0.1-i*0.1,dt(i,j)
enddo
enddo
close(2)

enddo
end


密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-24 15:06:05 | 显示全部楼层
去看清风批处理的帖子
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-4-24 15:08:46 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-4-24 15:53:21 | 显示全部楼层
river 发表于 2013-4-24 15:06
去看清风批处理的帖子

看过了,也能明白,也试了试,还是失败,崩溃中。。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-24 15:54:22 | 显示全部楼层
倔强的葱头 发表于 2013-4-24 15:53
看过了,也能明白,也试了试,还是失败,崩溃中。。。

多试一下啦,没有谁一下就成功的吧
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-24 16:32:34 | 显示全部楼层
倔强的葱头 发表于 2013-4-24 15:53
看过了,也能明白,也试了试,还是失败,崩溃中。。。

葱头,你的失败代码是啥
个人感觉,一般这里错误,都是在文件名的地方
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2013-4-24 21:36:48 | 显示全部楼层
失败是成功的。。。
谁每次弄对一个之前没点错误呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-24 21:47:15 | 显示全部楼层
可以先把这些读进一个txt中然后处理
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-4-25 09:16:27 | 显示全部楼层
topmad 发表于 2013-4-24 16:32
葱头,你的失败代码是啥
个人感觉,一般这里错误,都是在文件名的地方

我再试试,不信这个邪
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-4-25 09:30:53 | 显示全部楼层
倔强的葱头 发表于 2013-4-25 09:16
我再试试,不信这个邪

你这样  每次组合完了文件名以后  print一下 然后pause  看看对不对 在进行下面的 一步步print 就知道错在哪里了
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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