下面是求两个3x3阶矩阵的乘积的FORTRAN95代码:

program matrix_multiplication
    implicit none
    integer :: i, j, k
    real :: matrix1(3,3), matrix2(3,3), result(3,3)

    ! 初始化矩阵1
    matrix1 = reshape((/1, 2, 3, 4, 5, 6, 7, 8, 9/), shape(matrix1))

    ! 初始化矩阵2
    matrix2 = reshape((/1, 2, 3, 4, 5, 6, 7, 8, 9/), shape(matrix2))

    ! 计算矩阵乘积
    do i = 1, 3
        do j = 1, 3
            result(i,j) = 0.0
            do k = 1, 3
                result(i,j) = result(i,j) + matrix1(i,k) * matrix2(k,j)
            end do
        end do
    end do

    ! 输出结果
    write(*, "(A)") "矩阵1:"
    do i = 1, 3
        write(*, "(3F5.1)") matrix1(i,:)
    end do

    write(*,*)

    write(*, "(A)") "矩阵2:"
    do i = 1, 3
        write(*, "(3F5.1)") matrix2(i,:)
    end do

    write(*,*)

    write(*, "(A)") "乘积矩阵:"
    do i = 1, 3
        write(*, "(3F6.1)") result(i,:)
    end do

end program matrix_multiplication

这段代码首先定义了三个3x3阶的实数矩阵:matrix1matrix2,和result。然后,通过使用reshape函数初始化了矩阵1和矩阵2。接下来,使用三重循环计算矩阵的乘积,并将结果存储在result矩阵中。最后,通过使用write语句将矩阵1、矩阵2和乘积矩阵输出到屏幕上

使用FORTRAN95求两个33阶矩阵的乘积

原文地址: https://www.cveoy.top/t/topic/hy9T 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录