implicit none real m1(3,2),m2(3,2),m3(3,2),v(2),r(2) integer i,j,rowd,nr,nc nr=2 nc=2 rowd=3 do i=1,nr do j=1,nc m1(i,j)=i*j m2(i,j)=i+j enddo v(i)=i**2 enddo call mvmult(m1,v,r,rowd,nr,nc) print*,r(1),r(2) call mmmult(m1,m2,m3,rowd,nr,nc) print*,m3(1,1),m3(1,2),m3(2,1),m3(2,2) stop'DONE' end