嘿,我是这个网站的新手,所以我可能做错了几件事,但这是我的问题:
您是否可以按以下方式制作DO LOOP(在Fortran90中):
program help
implicit none
real, dimension (10,10) :: imarc
integer :: R , j , k
imarc (1:10,1:10) = 50
imarc (1:10,1) = 20
imarc (1,1:10) = 20
imarc (1:10,10) = 20
imarc (10,1:10) = 20
imarc (3,3) = 100
!!! HERE IS THE DO LOOP THAT GIVES A COMPILE ERROR
DO R = 1 , 1000
DO j = 2 , 9
DO k = 2 , 9
imarc (j,k) = 0.25( imarc((j-1),k) + imarc((j+1),k) + imarc(j,(k-1)) + imarc(j,(k+1)) )
imarc (3,3) = 100
END DO
END DO
END DO
WRITE (*,*) "Node (5,5) =", imarc(5,5)
end program help
我希望有人可以帮助我解决我的问题。
这是我收到的错误消息:
imarc(j,k) = 0.25( imarc((j-1),k) + imarc((j+1),k) + imarc(j,(k-1)) +
1
Error: Unclassifiable statement at (1)
好吧,我希望我做的一切正确,或者至少足够好,可以有人帮助我。
谢谢一大堆!
-马克
最佳答案
您缺少算术运算符,我猜是0.25之后的*
。相邻数量并不意味着乘法,因为在代数中,您必须使用运算符。
附言问得很好的问题。。。完整,完整的程序显示出该问题。