<swustoj>?id=31 水仙花数

链接http://acm.swust.edu.cn/problem/0031/

#include <stdio.h>
int main()
{
    void swap(int &a,int &b);
    bool waterfairy(int num);
    int left,right;
    bool judge;
    while(scanf("%d %d",&left,&right)&&left!=0&&right!=0)
    {
        judge=false;
        swap(left,right);
        for(int i=left;i<=right;i++)
        {
            if(waterfairy(i))
            {
                printf("%d ",i);
                judge=true;
            }
        }
        if(!judge)
        {
            printf("no");
        }
        printf("\n");
    }
    return 0;
}
void swap(int &a,int &b)
{
    if(a>b)
    {
        int temp=a;
        a=b;
        b=temp;
    }
}
bool waterfairy(int num)
{
    int temp=num;
    int sum=0;
    while(temp)
    {
        sum+=(temp%10)*(temp%10)*(temp%10);
        temp/=10;
    }
    if(sum==num)
    {
        return true;
    }
    else
    {
        return false;
    }
}

 

posted @ 2016-07-27 14:05  艹kiss灬不离  阅读(339)  评论(0编辑  收藏  举报