今天做ACM题,有一道关于水仙花数的题
要求:
请判断一个数是不是水仙花数。其中水仙花数定义各个位数立方和等于它本身的三位数。
例如:1^3 + 5^3+ 3^3 = 153
格式:
输入(以0结尾):
153
370
158
输出:
Yes
Yes
No
#include <iostream>
using namespace std;
int main()
{
int *s = new int;
int x = 1;
int i =0;
while(x!=0)
{
cin>>x;
s[i]=x;
i++;
}
for(int j=0;j<i-1;j++)
{
if(((s[j]/100)*(s[j]/100)*(s[j]/100)+(s[j]%100/10)*(s[j]%100/10)*(s[j]%100/10)+(s[j]%10)*(s[j]%10)*(s[j]%10))==s[j])
{
cout<<"Yes"<<endl;
}
else
cout<<"No"<<endl;
}
return 0;
}