要想利用c++实现水仙花数选取,我们就应该先明白什么样的数叫水仙花数。如下将会介绍水仙花数的概念。
水仙花数概念:
水仙花数是指一个三位数,它的各个位上的数字的三次幂之和等于这个三位数本身。
例如:1^3+5^3+3^3=153
那么我们称153是水仙花数。
题目:利用do……while语句找出三位数中所有的水仙花数。
分析:要在100~999之间寻找水仙花数,我们需要获取到这个数的个位、十位、和百位上的数,利用上述式子来验证这个数是不是水仙花数。在获取个位和十位上的数是我们需要用到取余(%),在获取个位上的数时我们可以直接取模于10来获得我们需要的数字。
#include<iostream>
using namespace std;
int main()
{
int num=100;
do
{
int a=0;
int b=0;
int c=0;
a=num%10; //获取个位
b=num/10%10; //获取十位
c=num/100; //获取百位
if(a*a*a+b*b*b+c*c*c==num)
{
cout<<num<<endl;
}
num++;
}while(num<1000);
}