nyoj 39 水仙花数

                                                                        水仙花数点击打开链接

时间限制: 1000 ms  |  内存限制: 65535 KB
难度: 0
描述
请判断一个数是不是水仙花数。
其中水仙花数定义各个位数立方和等于它本身的三位数。
输入
有多组测试数据,每组测试数据以包含一个整数n(100<=n<1000)
输入0表示程序输入结束。
输出
如果n是水仙花数就输出Yes
否则输出No
样例输入
153
154
0
样例输出
Yes
No
很简单的一个题,以前用for嵌套来做,但是其实还有更简单的办法
#include
#include
#include
#include
#include
int main()
{
	int a,b,c,d,e,k;
	while(scanf("%d",&a)&&a!=0)
	{
		b=a%10;//个位 
		c=a-b;
		c=c/10;
		d=c%10;//十位 
		e=c-d;
		e=e/10;
		k=e%10;//百位
		if(b*b*b+d*d*d+k*k*k==a)
		printf("Yes\n");
		else
		printf("No\n"); 
	}
	
	return 0;
}





你可能感兴趣的:(NYOJ)