c Gauss Elimination Method parameter (n=3) implicit real*8 (a-h, o-z) dimension a(n,n),b(n),x(n) call input(a,b) call print(a,b) do 10 i=1,n an=a(i,i) do 20 j=i,n a(i,j)=a(i,j)/an 20 continue b(i)=b(i)/an call print(a,b) do 30 k=i+1,n an=a(k,i) do 40 j=i,n a(k,j)=a(k,j)-an*a(i,j) 40 continue b(k)=b(k)-an*b(i) 30 continue call print(a,b) 10 continue do 50 i=n,1,-1 x(i)=b(i) do 60 j=i+1,n x(i)=x(i)-x(j)*a(i,j) 60 continue 50 continue do 70 i=1,n write(*,100) i,x(i) 70 continue 100 format (1x,'Ans.','x(',i1,')=',1pe12.5) stop end subroutine input(a,b) parameter (n=3) implicit real*8 (a-h, o-z) dimension a(n,n),b(n) a(1,1)=1.0 a(1,2)=2.0 a(1,3)=1.0 a(2,1)=3.0 a(2,2)=8.0 a(2,3)=7.0 a(3,1)=2.0 a(3,2)=7.0 a(3,3)=4.0 b(1)=3.0 b(2)=5.0 b(3)=8.0 return end subroutine print(a,b) parameter (n=3) implicit real*8 (a-h, o-z) dimension a(n,n),b(n) do 10 i=1,n write(*,*) (real(a(i,j)),j=1,n),real(b(i)) 10 continue write(*,*) '-----------------' return end