案例描述:
水仙花数是指一个三位数,它的每个位上的数字的三次幂之和等于它本身。
例如:1^3 + 5^3 +3^3 =153
用do…while语句求出所有三位数中的水仙花数
【关键】
找到个、十、百位
获取个位:对数字取模于10
153%10=3
获取十位:除以10的结果再取模于10
153/10=15(整型运算)
15%10=5
获取百位:除以100
153/100=1
#include<iostream>
using namespace std;
int main()
{
int num = 100;
do
{
int a = 0;
int b = 0;
int c = 0;
a = num % 10;
b = num / 10 % 10;
c = num / 100;
if (a * a * a + b * b * b + c * c * c == num)
{
cout << num << endl;
}
num++;
} while (num < 1000);
system("pause");
return 0;
}