matlab求阶乘的和
matlab阶乘怎么表示?
matlab阶乘怎么表示?
matlab中的阶乘函数是factorial,其函数形式为:
factorial(N)
当N为向量时,计算从1到N这N个数的乘积,即相当于prod(1:N);
当N是N维数组时,计算N中每个元素的阶乘。
注意:由于在matlab中双精度浮点数的整数位数大约是15位,只有对不大于21的整数计算结果是精确的,对大于21的整数,factorial的计算结果只有前15位是准确的。
举例说明如下:
(1)计算6的阶乘。
在matlab命令窗口(Command Window)中,输入
y = factorial(6)
运算结果为:720
与在Matlab命令窗口(Command Window)中,输入
y = prod(1:6)
运算结果为:720。与factorial(6) 的结果相同。
(2)同时计算 5,6,7,10的阶乘。
在Matlab命令窗口(Command Window)中,输入命令
y = factorial([5 6 7 10])
运算结果为:120 720 5040 3628800,是数组中每个元素的阶乘。
matlab怎么用for语句求阶乘?
用matlab设计程序如下:for i=1:10 sum=1for j=1:isum=sum*jendsumend运行结果显示,1到10的阶乘分别是: 1、2、 6、 24、120、 720、5040、40320、362880 、3628800。运行结果如图:MATLAB中for循环的语法是 -for index = values 其中,values的值取如下格式:
matlab如何对输出的数组求和?
matlab中矩阵元素求和、求期望和均方差
在matlab中求一个矩阵中元素的和可以自己编写for循环来完成,这样比较方便,想求那些数据的和都可以做到,然而效率比较低,如果数据量大程序会跑好长时间。所以我们可以转而用matlab提供的sum函数。
设M为一个矩阵,那么:
1、求和
sum(M):以矩阵M的每一列为对象,对每一列的数据分别求和。
sum(M,2):以矩阵的每一行为对象,对每一行的数据分别求和。
sum(M(:)):将矩阵中的所有元素相加求和。
2、求期望
matlab中矩阵元素求期望的函数mean与sum用法雷同。
mean(M):以矩阵M的每一列为对象,对每一列的数据分别求期望。
mean(M,2):以矩阵的每一行为对象,对每一行的数据分别求期望。
mean(M(:)):以矩阵所有数据为对象求期望。
3、求均方差
若要求整个矩阵所有元素的均方差,则要使用std2函数:std2(M)
注:Matlab中有求数组方差的 函数:var;要注意的是var函数所采用公式中,分母不是length(X) ,而是length(X)-1 。这是因为var函数实际上求的并不是方差,而是误差理论中“有限次测量数据的标准偏差的估计值”。var没有求矩阵的方差功能,可使用std先求均方差,再平方得到方差。std,均方差,std(X,0,1)求列向量方差,std(X,0,2)求行向量方差。