Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program main
- implicit none
- integer, parameter :: n = 1000 !размерность
- real, dimension(n, n) :: matr1, matr2
- integer i, j
- real :: starttime, finishtime
- call cpu_time(starttime)
- do j = 1, n
- do i = 1, n
- matr1(i, j) = sin(1.*i*j)
- matr2(i, j) = 1. / ((1.*i)**j)
- end do
- end do
- call mult(matr1, matr2, n)
- call cpu_time(finishtime)
- print *, 'Calculation time: ', finishtime - starttime
- end program main
- subroutine mult(a, b, n)
- integer, intent(in) :: n
- real, dimension(n, n) :: a, b, c
- integer i, j, k
- real temp
- open(2, file='asd.txt')
- do j = 1, n
- do i = 1, n
- temp = 0.
- do k = 1, n
- temp = temp + a(i,k)*b(k,j)
- end do
- c(i, j) = temp
- write(2, *) c(i, j)
- end do
- write(2, *) "====================================="
- end do
- close(2)
- end subroutine mult
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement