这个很难,因为我在互联网上找不到。请编写一个不使用 C++ 中的 math.h 库的程序,在该程序中,您将显示从 1 到用户输入范围的所有 armstrong 数字。
问问题
1239 次
1 回答
2
不会给你完整的代码 - 使用随后的乘法来找到权力。其余的应该是直截了当的。
这里有一些代码,如果这是家庭作业,你不能使用,因为它会给你带来麻烦:
bool isArmstrongNumber(int x)
{
//some magic happens here
}
template<int x>
struct armstrong_number
{
armstrong_number()
{
if ( isArmstrongNumber(x) )
std::cout << x << endl;
armstrong_number<x-1> y;
}
};
template<>
struct armstrong_number<0>
{
armstrong_number()
{
std::cout << 0 << endl;
}
};
int main()
{
armstrong_number<999> x;
}
于 2012-09-04T08:32:34.060 回答