num_disp.m

来自「k个位子」· M 代码 · 共 22 行

M
22
字号
function num_disp(K,N,A)
%    有从1到K,K个位置和从1到N,N个数。在K个位置上填这N个数。可以重复。所以每个位置
% 都有N种填法,总共有N的K次方种填法。要得到所有的填充结果。K,N的值不是固定的,每次
% 运行程序时设定。还有就是,我设定第一个位置上永远都是1,所以总共要生成的结果数变成N
% 的K-1次方。

%K=2 N=5
%每个位置可以填N个数
initial=A;
last=K;
for i=1:size(N,2)
    A(last)=N(i);
    %是不是已经到达第1个位置了
    if(K>1)
        %如果不是,则继续
        num_disp(K-1,N,A);
    else
        %如果到达终点,则显示结果
        disp(A);
        A=initial;
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?