program laplace
real, dimension(15,15) :: V1
real, dimension(15,15) :: V2
do I=1,15
do J=1,15
V1(I,J) = 1000*random(L)
end do
end do
do I=1,15
V1(1,I)=0.0
end do
do I=1,15
V1(I,1) = 0.0
end do
do I=1,15
V1(15,I)=0.0
end do
do I=1,15
V1(I,15)=100.0
end do
10 do I=2,14
do J=2,14
V1(I,J) = (V1(I-1,J)+V1(I+1,J)+V1(I,J-1)+V1(I,J+1))/4
Vold(I,J)=V1(I,J)
if(V1(I,J)-Vold(I,J)/Vold(i,J) .GT. 0.01) THEN
GO TO 10
ELSE IF (i==14 .AND. j==14)
go to 50
end do
end do
! do i=2,14
! do J=2,14
! if(V1(I,J)-Vold(I,J)/Vold(i,J) .GT. 0.01) THEN
! GO TO 10
! ELSE IF (i==14 .AND. j==14)
!
! go to 50
! end if
! end do
!end do
50 do i=1,15
write(*,'(1X,100G14.5)') (V1(i,j),j=1,15)
end do
end program laplace
function random(L)
integer :: L
L = mod(1366*L+150889,714025)
Random=Real(L)/Real(7142024)
return
end