水仙花数在10^2到9999之间的,用matlab实现,怎么写??

2024-11-18 16:26:12
推荐回答(2个)
回答1:

m=[];
for i=100:9999;
n=[floor(i/1000),floor(mod(i,1000)/100),floor(mod(i,100)/10),mod(i,10)];%%%分离出千百十个位,组成矩阵
if floor(i/1000)==0;
if sum(n.^(length(n)-1))==i;
m=[m,i];
end
else
if sum(n.^(length(n)))==i;
m=[m,i];
end
end
end
m

回答2:

要用循环吧,不过你的条件不是很清楚。能不能说清楚一些?应该不难的