e_625_01.f90
来自「Fortran77和90/95编程入门对应的程序源码」· F90 代码 · 共 34 行
F90
34 行
PROGRAM main
INTERFACE
REAL FUNCTION trace(sqr)
REAL,INTENT(IN) :: sqr(:,:) ! 迟型数组
END FUNCTION
END INTERFACE
REAL,ALLOCATABLE :: a(:,:)
INTEGER :: n,i
PRINT*,'正方矩阵的行数(或列数)='
READ*, n
ALLOCATE(a(n,n))
DO i=1,n
PRINT '(A,I2,A)','第',i,'行元素='
READ *, a(i,1:n)
END DO
PRINT '(A,F7.4)','Trace = ',trace(a)
END
FUNCTION trace(x) RESULT(tr)
REAL,INTENT(IN) :: x(:,:) ! 2维数组
REAL :: tr
INTEGER :: n1,n2,i
n1=SIZE(x,1); n2=SIZE(x,2)
IF(n1/=n2) THEN
PRINT*,'非正方矩阵' ; RETURN
ELSE
tr=0.
DO i=1,n1
tr=tr+x(i,i)
END DO
END IF
END FUNCTION
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?