关于matlab程序编写 两种循环使用

img


第一题 如何实现它只输出最后结果 我自己编的代码会一直循环 停不下来 输出的数很混乱 很疑惑
第二题 不同进制间的转化怎么实现 具体的程序怎么写呢
谢谢解答

你好,我给你参谋一下,这第一道题有:

% for循环
for i = 1000:9999
    a = floor(i/1000);%千位数
    b = floor(mod(i,1000)/100);%百位数
    c = floor(mod(i,100)/10);%十位数
    d = mod(i,10);%个位数
    if(a==d && i==(5*c+1)^2)%判断千位数是否等于个位数以及abca是否等于(5*c+1)^2
        fprintf('%d\n',i)
    end
end

% while循环
i = 1000;
while i<=9999 
    a = floor(i/1000);%千位数
    b = floor(mod(i,1000)/100);%百位数
    c = floor(mod(i,100)/10);%十位数
    d = mod(i,10);%个位数
    if(a==d && i==(5*c+1)^2)%判断千位数是否等于个位数以及abca是否等于(5*c+1)^2
        fprintf('%d\n',i)
    end
    i = i + 1; % i每次加一
end

第二道题参考我之前的答案:

有帮助望采纳呢