1.水仙花数是啥?
水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。
2.思路
1.把[100,999]的数遍历一遍
2.把每个数的个、十、百位数提出,并乘3次方并相加
3.最后比对是否相等
3.代码
#include<iostream> #include<math.h> using namespace std; int main() { int number = 0; int hundred = 0; int ten = 0; int one = 0; //1.使用遍历[100,1000)的数 for (number = 100; number < 1000; number++) { hundred = number / 100; ten = number / 10 % 10; one = number % 10; if (pow(hundred, 3) + pow(ten, 3) + pow(one, 3) == number) { cout << number << endl; } } return 0; }