麦田守望者 发表于 2014-4-28 20:56:07

求上三角矩阵问题

本帖最后由 麦田守望者 于 2014-4-28 21:40 编辑

subroutine Upper(matrix)
implicit none
real::matrix(:,:)
integer::m,n
integer::i,j
real::e
m=size(matrix,1)
n=size(matrix,2)
do i=1,n-1
   do j=i+1,m
   e=matrix(j,i)/matrix(i,i)
   matrix(j,i:m)=matrix(j,i:m)-matrix(i,i:m)*e
   end do
end do
return
end subroutine Upper
n是列号,m是行号吧,这个matrix(j,i:m)=matrix(j,i:m)-matrix(i,i:m)*e感觉不对啊,为什么列从i:m呢?这句整个都没看懂,要是我写就写成matrix(j,i:n)=matrix(j,i:n)-matrix(i,i:n)*e,哪位大哥帮忙看看啊

fcode 发表于 2014-4-28 21:45:41

对,我也觉得应该是 matrix( j , i:n )

麦田守望者 发表于 2014-4-29 20:43:50

fcode 发表于 2014-4-28 21:45
对,我也觉得应该是 matrix( j , i:n )

额,我试了,两种结果是一样的呢。。。不知道为什么啊

楚香饭 发表于 2014-4-29 22:21:10

啊?我试了不一样啊。m=n 时才一样吧

麦田守望者 发表于 2014-4-29 23:59:36

chuxf 发表于 2014-4-29 22:21
啊?我试了不一样啊。m=n 时才一样吧

额,汗颜啊!忘了,我的是m=n,嘿嘿,谢谢啦
页: [1]
查看完整版本: 求上三角矩阵问题