算法训练 4-3水仙花数
时间限制:1.0s 内存限制:256.0MB
问题描述
打印所有100至999之间的水仙花数。所谓水仙花数是指满足其各位数字立方和为该数字本身的整数,例如 153=13+53+3^3。
样例输入
一个满足题目要求的输入范例。
例:
无
样例输出
153
???
???
???*/
//方案1:
#include <iostream>
using namespace std;
int main()
{
int m = 0;
for(int a = 1; a <= 9 ; a++)
for(int b = 0 ; b <= 9 ; b++)
for(int c = 0 ; c <= 9 ; c++)
{
m = 100 * a + 10 * b + c;
if(m == a * a * a + b * b * b + c * c * c)
cout << m << endl;
}
return 0;
}
//方案2:
#include<iostream>
using namespace std;
int main()
{
for(int i = 100 ; i < 1000 ; i++)
{
int a = i % 10;
int b = (i % 100) / 10;
int c = i / 100;
if(a * a * a + b * b * b + c * c * c == i)
cout << i << endl;
}
return 0;
}

本文介绍了两种在C++中实现查找100至999间所有水仙花数的方法。水仙花数是一种特殊的整数,其各位数字的立方和等于该数本身。示例代码展示了如何通过循环遍历并计算每一位的立方值来验证是否为水仙花数。
1047

被折叠的 条评论
为什么被折叠?



