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

2024年11月18日 16:26
有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):

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