登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
求助,结果出错,不知道怎么改。
结果:forrtl: severe (161): Program Exception -array bounds exceeded
Source
Routine
h500kk.exe
Image PC
0040151F Unknown Line
Unknown Unknown
Incrementally linked image——PC correlation disabled.
program main
parameter(ii=37,jj=17,mo=12,yr=4)
integer i,j,m,y
real var(ii,jj,mo,yr)
real ano(ii,jj,mo,yr)
real ave(ii,jj,mo,yr)
real std(ii,jj,mo,yr)
open(1,file='H500.dat')
cccccccccccccccc 读数据资料 h500 cccccccccccccccccccccccc
do y=1,4
do m=1,12
read(1,*) !空读一行
read(1,*) ((var(i,j,m,y),i=1,ii),j=1,jj)
enddo
enddo
10 format(37f8.1)
20 format(37f7.2)
close(1)
ccccccccccccccccc以下自己编程计算ccccccccccccccccccccccccc
do i=1,37,1
do j=1,17,1
ave(i,j,2,1)=0.0
do y=1,4
ave(i,j,2,y)=ave(i,j,2,y)+var(i,j,2,y)
end do
ave(i,j,2,y)=ave(i,j,2,y)/4
end do
end do
do i=1,37,1
do j=1,17,1
std(i,j,2,1)=0.0
do y=1,4
ano(i,j,2,y)=var(i,j,2,y)-ave(i,j,2,y)
std(i,j,2,y)=std(i,j,2,y)+ano(i,j,2,y)*ano(i,j,2,y)
end do
std(i,j,2,y)=sqrt(std(i,j,2,y)/4)
end do
end do
do iy=1,4
do m=1,12
write(10) var(1,1,m,iy)
end do
end do
open(10,file='h500.grd',form="binary")
write(10) ((ave(i,j,2,y),i=1,37),j=1,17)
close(10)
open(11,file='ano-h500.grd',form="binary")
write(11) ((ano(i,j,2,y),i=1,37),j=1,17)
close(11)
open(12,file='std-h500.grd',form="binary")
write(12) ((ave(i,j,2,y),i=1,37),j=1,17)
close(12)
end
|