求出水仙花数
水仙花数:
也被称为超完全数字不变数、自恋数、自幂数、阿姆斯特朗数,是指一个三位数,它的每个位上的数字的3次幂之和等于它本身。
例如:
1^3 + 5^3 + 3^3 = 153
下面为Matlab命令行窗口的截图:
下面为里面的实现代码:
>> m = 100:999;
>> m1 = rem(m,10);
>> m2 = rem(fix(m/10),10);
>> m3 = fix(m/100);
>> k = find(m == m1.*m1.*m1 + m2.*m2.*m2 + m3.*m3.*m3);
>> k
k =
54 271 272 308
>> S = m(k)
S =
153 370 371 407
>> k = find(m == m1^3 + m2^3 + m3^3)
错误使用 ^
用于对矩阵求幂的维度不正确。请检查并确保矩阵为方阵并且幂为标量。要执行按元素矩阵求幂,请使用 '.^'。
>> k = find(m == m1.^3 + m2.^3 + m3.^3)
k =
54 271 272 308
>> S = m(k)
S =
153 370 371 407
>>