题目描述
请判断一个数是不是水仙花数。
其中水仙花数定义各个位数立方和等于它本身的三位数。
输入
有多组测试数据,每组测试数据以包含一个整数n(100<=n<1000) 输入0表示程序输入结束。
输出
如果n是水仙花数就输出Yes 否则输出No
样例输入
153
154
0
样例输出
Yes
No
代码
#include<stdio.h>
int main()
{
int n,i,j,k;
while(scanf("%d",&n)!=0)
{
i=n/100;//百位数
j=(n-i*100)/10;//十位数
k=n%10;//个位数
if(n==0)//结束程序的条件
break;
if(n==i*i*i+j*j*j+k*k*k)//判断是否为水仙花数
printf("Yes\n");
else
printf("No\n");
}
return 0;
}
结果为