Zeng-fh 2022-04-21 22:44 采纳率: 89.8%
浏览 74
已结题

Matlab的递归相关疑问

1,输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则输出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。
2,给出一个正整数a,要求分解成若干个正整数的乘积,并且按大小顺序输出,问这样的分解的种数有多少(注意,a=a也是一种分解)。
这个我尝试了这样的,效果不理想


%% 待理解
clear;clc;
%% 调用区域
global a;
n=input("甲");
while(n)
a=0;
ss=input("乙");
fun(2,ss);
fprintf("%d\n",a);
n=n-1;
end
%% 函数部分
function []=fun(x,y)
global a;
if(y==1)
    a=a+1;
    return
else
    for i=x:y
        if(mod(y,i)==0)
            fun(i,y/i);
        end
    end
end
end

3,给出一个正整数a,要求分解成若干个正整数的和,并且按大小顺序输出,问这样的分解的种数有多少(注意,a=a也是一种分解)。

希望使用“函数+调用代码”的方法解决这三个示例

  • 写回答

2条回答 默认 最新

  • 歇歇 2022-04-22 00:51
    关注
    Str = 'FBECGHD'; 
    function []=fun(Str)
    A =perms(Str) ; 
    B = {}; 
    index = 1; 
    while true 
        try 
         substring = A(index,:); 
         B{index}=substring; 
         index = index + 1; 
        catch 
         break 
        end 
    end 
    C = unique(B) 
    
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月28日
  • 修改了问题 4月21日
  • 赞助了问题酬金5元 4月21日
  • 创建了问题 4月21日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效