matlab函数判断水仙花数2位数
时间: 2024-10-17 15:10:00 浏览: 24
在MATLAB中,水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。
要编写一个函数来判断一个两位数是否为水仙花数,你可以创建一个名为`isWaterLily`的函数,如下所示:
```matlab
function isWaterLily(num)
% 检查输入是否为两位数
if length(num) ~= 2 || isnan(num) || ~isnumeric(num)
error('Input must be a two-digit number.');
end
% 分离十位和个位数字
digits = str2num(num);
digit1 = floor(digits / 10); % 十位
digit2 = mod(digits, 10); % 个位
% 计算各个位的立方和
sumOfCubes = digit1^3 + digit2^3;
% 判断是否为水仙花数
if sumOfCubes == num
result = true;
else
result = false;
end
isWaterLily = result; % 返回结果
end
```
使用这个函数,你可以像下面这样测试:
```matlab
>> isWaterLily(153)
ans =
logical
1
>> isWaterLily(123)
ans =
logical
0
```
阅读全文