水仙花数是指一个三位数其各位数字立方和等于该数本身,例如,153=1+125+27,编写一个函数,判断一个三位数是否是一个水仙花数,并返回一个整数值(0表示不是水仙花数,1表示是水仙花数)
C++代码:
#include <iostream>
using namespace std;
//判断是否是水仙花
int isSxh(int n)
{
int s = 0;
int a = n;
int d = 0;
while(a>0)
{
int d = a%10;
s += (d*d*d);
a = a/10;
}
if(s == n)
return 1;
else
return 0;
}
int main()
{
int n;
cin >> n;
if(isSxh(n))
cout << "是水仙花数";
else
cout <<"不是水仙花数";
return 0;
}
C代码:
#include <stdio.h>
//判断是否是水仙花
int isSxh(int n)
{
int s = 0;
int a = n;
int d = 0;
while(a>0)
{
int d = a%10;
s += (d*d*d);
a = a/10;
}
if(s == n)
return 1;
else
return 0;
}
int main()
{
int n;
scanf("%d",&n);
if(isSxh(n))
printf("是水仙花数");
else
printf("不是水仙花数");
return 0;
}
#include <stdio.h>
int isParam(int n){
int a = n/100;
int b = n%100/10;
int c = n%10;
if(n == a*a*a + b*b*b + c*c*c){
return 1;
}
return 0;
}
int main()
{
int n;
scanf("%d",&n);
if(isParam(n))
printf("%d是水花仙数",n);
else
printf("%d不是水花仙数",n);
return 0;
}
int 水仙花(int num)
{
int 百位 = num / 100;
int 十位 = num / 10 % 10;
int 个位 = num % 100;
if (pow(百位, 3) + pow(十位, 3) + pow(个位, 3) == num)
{
return 1;
}
return 0;
}