水仙花数

时间限制:1000 ms  |  内存限制:65535 KB

描述

我们知道,如果一个数是水仙花数,当且仅当它的各位数字的三次方的和与这个数相等。
如153 = 1 ^ 3 + 5 ^ 3 + 3 ^ 3则153是水仙花数

输入

输入数据有若干组,每组一个三位数N(100<=N<=999)

输出

每组测试数据一行,如果这个数是水仙花数,则输出“Yes”,否则输出“No”.

样例输入
153
      125
样例输出
Yes
    No
原文链接:http://www.bianchengla.com/course/24/practise/problem?id=1677
 
C++语言
#include<iostream>
      using namespace std;

int main()
{
    int n, x, y, z, tmp, result;
    while (1)
    {
        cin>>n;
        if (cin.eof())
            break;
        x = n /100;
        tmp = n % 100;
        z = tmp % 10;
        y = tmp / 10;
        result = x* x* x+ z *z *z+ y* y* y;
        if (n == result )
            cout<<"Yes"<<endl;
        else
            cout<<"No"<<endl;
    }
    return 0;
}
 posted on 2011-12-29 21:48  mfslog  阅读(468)  评论(1编辑  收藏  举报