给我写一个求水仙花数的脚本文件,用matlab完成
时间: 2024-10-21 19:17:39 浏览: 14
当然,下面是使用MATLAB编写的简单脚本,用于查找水仙花数。水仙花数是指每个位上的数字立方后相加等于原数本身的三位数。以下是完整的代码:
```matlab
% 定义一个函数寻找水仙花数
function narcissisticNumbers = findNarcissisticNumbers()
% 设置初始结果列表
narcissisticNumbers = [];
% 循环遍历100到999的所有整数
for num = 100:999
% 将数字分解为百位、十位和个位
hundreds = floor(num/100); % 百位
tens = floor((num - hundreds*100)/10); % 十位
ones = num - hundreds*100 - tens*10; % 个位
% 计算每个位上的立方和
sumOfCubes = ones^3 + tens^3 + hundreds^3;
% 判断是否为水仙花数
if sumOfCubes == num
narcissisticNumbers = [narcissisticNumbers, num]; % 添加到结果列表
end
end
% 输出结果
narcissisticNumbers
end
% 调用函数
results = findNarcissisticNumbers();
disp("水仙花数:");
disp(results)
```
将以上代码复制到MATLAB工作区中,然后运行`findNarcissisticNumbers()`函数,它会显示所有的水仙花数。
阅读全文