【C++语言训练】"水仙花数"问题
题目描述
判断一个数是否为"水仙花数",所谓"水仙花数"是指这样的一个数:其各位数字的立方和等于该数本身。例如:371是一个"水仙花数",371=33+73+1^3.
输入
一个三位数
输出
1或者0(1代表此数为水仙花数,0代表此数不是水仙花数)
样例输入
371
样例输出
1
话不多说,上代码!:
#include<iostream>
#include<math.h>
using namespace std;
int main(){
int n,g,s,b;//定义n:输入的数;g:个位;s:十位;b:百位
cin>>n;
b=n/100;//求百位
s=n%100/10;//求十位
g=n%100%10;//求个位
if(pow(b,3)+pow(s,3)+pow(g,3)==n){//判断是否是水仙花数
cout<<"1";
}
else{
cout<<"0";
}
}