下面是用 Fortran 编写的代码,实现了上述功能:
```fortran program matrix implicit none
! 定义变量 integer :: i, j, k, temp real, dimension(5, 5) :: a, at, b real, dimension(5) :: rowSum, maxRowSum
! 输入矩阵 do i = 1, 5 do j = 1, 5 read(,) a(i, j) end do end do
! 计算转置矩阵 at = transpose(a)
! 输出矩阵和转置矩阵 write(,) "原矩阵:" do i = 1, 5 do j = 1, 5 write(,) a(i, j), end do write(,) end do write(,) "转置矩阵:" do i = 1, 5 do j = 1, 5 write(,) at(i, j), end do write(,) end do
! 计算每行元素之和 rowSum = 0 do i = 1, 5 do j = 1, 5 rowSum(i) = rowSum(i) + a(i, j) end do end do
! 找到和值最大的行 maxRowSum = rowSum(1) k = 1 do i = 2, 5 if (rowSum(i) > maxRowSum) then maxRowSum = rowSum(i) k = i end if end do
! 将和值最大的行与第一行对调 if (k /= 1) then do j = 1, 5 temp = a(1, j) a(1, j) = a(k, j) a(k, j) = temp end do end if
! 输出对调后的新矩阵 write(,) "对调后的新矩阵:" do i = 1, 5 do j = 1, 5 write(,) a(i, j), end do write(,) end do文章来源:https://www.toymoban.com/news/detail-736997.html
! 用对角线上的各元素分别去除各元素所在的行 do i = 1, 5 do j = 1, 5 if (i == j) then b(i, j) = a(i,文章来源地址https://www.toymoban.com/news/detail-736997.html
到了这里,关于用fortran编写·:输入一个5行5列的矩阵,完成下列要求,输出该矩阵和该矩阵的转置矩阵,求每行元素之和,将和值最大的行与第一行对调,输出对调后的新矩阵,用对角线上的各元素分别去除各元素所在的行,输...的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!