求fortran编写的三个矩阵相乘的程序,三个矩阵设置成(m,m)形状的。

矩阵是T*K*T的转置。最好能设置成两重循环,即doi=1,mdoj=1,m的形式。先给15分悬赏,采纳加15分,谢谢~... 矩阵是T*K*T的转置。最好能设置成两重循环,即do i=1,m
do j=1,m
的形式。先给15分悬赏,采纳加15分,谢谢~
展开
 我来答
Foolgend
2011-12-14 · TA获得超过320个赞
知道答主
回答量:18
采纳率:0%
帮助的人:19.3万
展开全部
你的问题可进行简化,fortran中可以直接用matmul函数进行矩阵的乘积,下面是我编的程序愿您满意!其中矩阵C为矩阵A的转置,有问题可以问我
program main
implicit none
integer::A(3,3)=(/1,2,3,4,5,6,7,8,9/)
integer::B(3,3)=(/9,8,7,6,5,4,3,2,1/)
integer::C(3,3)=0
integer::D(3,3)=0
integer::i,j
do j=1,3
C(j,:)=A(:,j)!矩阵A的转置赋给C
enddo
write(*,*)"矩阵A=:"
write(*,"(3I3/)")((A(i,j),j=1,3),i=1,3)
write(*,*)"矩阵B=:"
write(*,"(3I3/)")((B(i,j),j=1,3),i=1,3)
write(*,*)"矩阵C=:"
write(*,"(3I3/)")((C(i,j),j=1,3),i=1,3)
D=matmul(A,B)
write(*,*)"矩阵A*B=:"
write(*,"(3I8/)")((D(i,j),j=1,3),i=1,3)
D=matmul(D,C)
write(*,*)"矩阵A*B*C=:"
write(*,"(3I8/)")((D(i,j),j=1,3),i=1,3)
stop
end
Lily0535
2011-12-12
知道答主
回答量:14
采纳率:0%
帮助的人:15.3万
展开全部
1.赋初值
do i=1,4
do j=1,4
bg(i,j)=0.0
end do
end do
2.两个矩阵乘
do i=1,4
do j=1,4
do k=1,4
g(i,j)=g(i,j)+b(i,k)*a(k,j)
end do
end do
end do
3.三个矩阵乘
do i=1,4
do j=1,4
do k=1,4
h(i,j)=h(i,j)+a(i,k)*g(k,j)
end do
end do
end do
注:a对应T矩阵,b对应K矩阵。h矩阵就是三个矩阵的乘积。
追问
老大,这个我也会,我是最近作业太多了,要弄个矩阵来验算我的结果,麻烦来个从program开始写到end program的,谢谢~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hfxt
2011-12-13
知道答主
回答量:13
采纳率:0%
帮助的人:2.3万
展开全部
建议先得到数学公式,再编程。

懒人 ,不值得理会
追问
我给分请人做,怎么像你这种唧唧歪歪的人这么多啊,不愿意不要来,你当自己是什么啊?!我提的问题都没看清,还得到数学公式再编程,你小学没毕业啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式