matlab编写m脚本文件,输出1000-9999之间的所有水仙花数,并统计其个数。

2024-11-18 13:56:41
推荐回答(2个)
回答(1):

for m=1000:9999 

    m1=fix(m/1000);

    m2=rem(fix(m/100),10);

    m3=rem(fix(m/10),10);

    m4=rem(m,10);

    i=1;

    if m==m1^4+m2^4+m3^4+m4^4

        disp(m)

        n(i)=m;

        i=i+1;

    end

end


结果

回答(2):

clc
clear
a=1000:9999;
% a=0:1000;
i=fix(a/1000).^3+fix(mod(a,1000)/100).^3+fix(mod(a,100)/10).^3+mod(a,10).^3;
aa=a(find(i==a));
sum1=sum(i==a);

一个也没有,程序没有问题,在0:1000测试通过的。