Advertisement
parthosutradhor

Determinant

Jul 17th, 2019
1,251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. program determinant
  2.     implicit none
  3.     integer, parameter:: m=3, n=3
  4.     integer:: i, j, k
  5.     real:: a(m,n), t, p, c=0.0, det
  6.     open(11,file="in.txt")
  7.     do i=1,m
  8.         read(11,*) (a(i,j), j=1,n)
  9.     end do
  10.     close(11)
  11.  
  12.     do j=1,m-1
  13.  
  14.         ! pivoting
  15.         do i=j+1, m
  16.             if(abs(a(i,j)) > abs(a(j,j))) then
  17.                 !row interchange
  18.                 c=c+1.0
  19.                 do k=1,n
  20.                     t=a(j,k)
  21.                     a(j,k)=a(i,k)
  22.                     a(i,k)=t
  23.                 end do
  24.             end if
  25.         end do
  26.  
  27.         if(a(j,j)==0) cycle
  28.  
  29.         !row echelon
  30.         do i=j+1, m
  31.             p=a(i,j)/a(j,j)
  32.             do k=j,n
  33.                 a(i,k)=a(i,k)-p*a(j,k)
  34.             end do
  35.         end do
  36.  
  37.     end do
  38.  
  39.     open(12,file="out.txt")
  40.  
  41.     p=1.0
  42.     do i=1,m
  43.         p=p*a(i,i)
  44.     end do
  45.     det = ((-1)**c)*p
  46.     write(12,*) "Determinat is ",det
  47.  
  48.     close(12)
  49.  
  50.  
  51. end program determinant
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement