上得厅堂,下得厨房,写得代码,翻得围墙,欢迎来到睿不可挡的每日一小练!
题目:Armstrong数
内容:
在三位的正整数中,例如abc,有一些可以满足a^3+b^3+c^3=abc的条件,也就是说各个位数的立方和正好是该数本身,这些数称为Armstrong数。是编写一个程序求出所有的三位Armstrong数。
我的解法:上来没多想,打开vs2013就敲了起来,问题果然很简单,分分钟就超神。。奥,不对就解决了!Armstrong数在国内好像就叫做水仙花数,很多程序设计的课本后面都有这种类型的思考题,确实很简单!
- #include <iostream>
- using namespace std;
- int _tmain(int argc, _TCHAR* argv[])
- {
- bool armstrong(int x);
- for (int i = 100; i <= 999; i++)
- {
- if (armstrong(i))
- cout << i << endl;
- }
- getchar();
- return 0;
- }
- bool armstrong(int x) //x应该是一个三位数
- {
- bool result = false;
- int bai = x / 100;
- int shi = (x / 10) % 10;
- int ge = x % 10;
- if(x == (bai*bai*bai + shi*shi*shi + ge*ge*ge))
- result = true;
- return result;
- }