1027: 判断水仙花数
题目描述
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:
“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+33。
现在要求输入一个三位数,判断该数是否是水仙花数,如果是,输出“yes”,否则输出“no”
输入
输入一个三位的正整数。
输出
输出“yes”或“no”。
样例输入 Copy
153
样例输出 Copy
yes
//方法一:
#include<stdio.h>
#include<math.h>
int main()
{
int a,x,y,z;
scanf("%d",&a);
x=a%10;
y=(a/10)%10;
z=(a/100)%10;
if(a==pow(x,3)+pow(y,3)+pow(z,3))
printf("yes");
else
printf("no");
return 0;
}
//方法二:
#include <stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a[4],i=0,j,sum=0,x=n;
while(n>0)
{
a[i++]=n%10;
n/=10;
}
for(j=0;j<i;j++)
{
sum+=a[j]*a[j]*a[j];
}
if(sum==x)
{
printf("yes");
}
else
{
printf("no");
}
}