用MATLAB求1000以内水仙花数
时间: 2023-11-02 19:31:35 浏览: 75
以下是MATLAB代码,用于计算1000以内的水仙花数:
```
for i = 1:1000
n = num2str(i);
digits = str2double(split(n,''))';
if sum(digits.^3) == i
disp(i);
end
end
```
代码中的for循环依次遍历1到1000之间的整数,将每个数转换为字符串,并将其每个数字转换为一个数组。然后它检查该数字是否等于其每个数字的立方和,如果是,则将其打印出来。
相关问题
用matlab求所有水仙花数
很高兴回答你的问题!水仙花数指的是一个三位数,它的各位数字的立方和等于这个三位数本身。例如:153=1^3+5^3+3^3。在MATLAB中,可以使用以下代码求解所有的水仙花数:
for i=100:999
a=floor(i/100);
b=floor((i-a*100)/10);
c=i-a*100-b*10;
if i==a^3+b^3+c^3
fprintf('%d\n',i)
end
end
这段代码可以输出所有的水仙花数。希望对你有帮助!
matlab求所有的水仙花数
好的!水仙花数指的是一个三位数,其各位数字立方和等于该数本身。例如153就是一个水仙花数,因为1³+5³+3³=153。以下是matlab代码来求所有的水仙花数:
for i=100:999
sum=0;
j=i;
while j>0
a=rem(j,10);
sum=sum+a^3;
j=(j-a)/10;
end
if sum==i
disp(i);
end
end