回 帖 发 新 帖 刷新版面

主题:不能再简单的程序,为何输不出结果?

    dimension v(1000,1000)
    do i=1,801
      do j=1,801
         v(i,j)=1600
      enddo
    enddo
    do j=1,801
       v(0,j)=3*v(1,j)-3*v(2,j)+v(3,j)               
       v(802,j)=3*v(801,j)-3*v(800,j)+v(799,j)
    enddo
    do i=1,801
       v(i,0)=3*v(i,1)-3*v(i,2)+v(i,3)     
        v(i,802)=3*v(i,801)-3*v(i,800)+v(i,799)
    enddo
       print*,v(1,0)
    end

回复列表 (共4个回复)

沙发

你这程序没错误?

板凳

do i=1,801
      do j=1,801
         v(i,j)=1600
      enddo
    enddo

这种赋值用 v(1:801,1:801) = 1600 就行了
另外v数组指标是默认从1开始的,没有v(0,x)

3 楼


我不知道下标能不能从0开始?

4 楼

如果需要用下标0,那声名时需要这样声名:
dimension v(0:1000,0:1000)

我来回复

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