求相关系数fortran程序~求相关系数的fortran程序~.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/03 14:05:39
求相关系数fortran程序~求相关系数的fortran程序~.

求相关系数fortran程序~求相关系数的fortran程序~.
求相关系数fortran程序~
求相关系数的fortran程序~.

求相关系数fortran程序~求相关系数的fortran程序~.
function relation(a,b,n)
!本程序计算两列向量的相关系数
!a,b分别是待计算的向量
!n是向量的长度,要求两列向量等长
implicit none
integer,intent(in)::n
real,intent(in)::a(n),b(n)
real::relation !返回的相关系数
integer::i,j !循环控制变量
real::sfenzi,sfenmu1,sfenmu2,s !加法器
real::amean,bmean !a,b向量的平均值
!计算平均值
s=0.
do i=1,n
s=s+a(i)
end do
amean=s/n
s=0.
do i=1,n
s=s+b(i)
end do
bmean=s/n
!计算相关系数
sfenzi=0.
sfenmu1=0.
sfenmu2=0.
do i=1,n
sfenzi=sfenzi+(a(i)-amean)*(b(i)-bmean)
sfenmu1=sfenmu1+(a(i)-amean)**2
sfenmu2=sfenmu2+(b(i)-bmean)**2
end do
relation=sfenzi/sqrt(sfenmu1*sfenmu2)
end function relation