水仙花数
水仙花数是指一个3位正整数,它的每个位上的数字的3次幂之和等于它本身。例如:153=。本题要求编写程序,计算所有3位水仙花数。
首先把三位数进行拆分,求出百位数,十位数和个位数,再求这三个数的立方和
先用一个for循环,中间的if用来判断是否符合,如果不符合进行下一次循环,如果符合就输出
#include<iostream> using namespace std; int main() { int a = 0; int b = 0; int c = 0; for (int i = 100; i <= 999; i++)//for循环查找符合条件的数 { int a = i / 100;//定义a为百位上的数 int b = (i / 10) % 10;//b为十位上的数 int c = i % 10;//c为个位上的数 if (i == a * a * a + b * b * b + c * c * c)//判断符不符合题目条件 cout << i << endl;//如果符合就输出 } return 0; }