function [ H ] = jiecheng(n)
    H=1;
        for i=1:n
            H=H*i;
        end;
end

上为源代码,新建脚本将其复制黏贴保存为“jiecheng.m”的文件,保存在需要使用的同名文件内。

直接写脚本的时候和上面的函数保存在同一文件内,然后直接使用即可。

例如

a = jiecheng(3);

a = 6

------------------------------------------------------------

更新,今天写代码的时候发现有时候需要用到向量的阶乘运算,于是把代码更新了一下

function [ H ] = jiecheng(n)
    H = 1;
    
    %标量
    if length(n) == 1
        if(n>1)
            for i =1:n
                H =H*i;
            end
        else
            return;
        end
        
    else%矢量
        
        for i = 1:length(n)
            H(i) = jiecheng(n(i));
        end
        
    end
end

现在代码输入标量返回一个标量的阶乘,输入矢量返回一个矢量的阶乘。

a = jiecheng([2 3 5]);

a = [2    6   120];

更适合做数据运算了

更多推荐

matlab 阶乘函数代码,可以进行矢量(向量)运算