首页 > 分享 > 水仙花数求解

水仙花数求解

水仙花数求解

最新推荐文章于 2020-08-26 21:51:32 发布

乔巴好萌 于 2013-03-20 09:01:07 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

/*

在数论中,水仙花数(Narcissistic number)也称为自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),是指一N位数,其各个数之N次方和等于该数。

例如153、370、371及407就是三位数的水仙花数,其各个数之立方和等于该数:

153 = 13 + 53 + 33。

370 = 33 + 73 + 03。

371 = 33 + 73 + 13。

407 = 43 + 03 + 73。

*/

// boosttest.cpp : Defines the entry point for the console application.

//

#include <iostream>

using namespace std;

 

 

int getPower(int number,int pow)

{

int retval = 1;

for ( int i = 0 ; i < pow; i ++ )

{

retval *= number;

}

return retval;

}

 

 

bool isNum( int number )

{

if ( number <= 0 )

{

return false;

}

int digitNum = 0;

int inputNum = number;

while ( number )

{

int lowerNumber = number % 10;

number = (number-lowerNumber)/10;

digitNum ++;

}

int currentValue = 0;

number = inputNum;

while ( number )

{

int lowerNumber = number % 10;

currentValue += getPower(lowerNumber,digitNum);

number = (number - lowerNumber)/10;

}

return currentValue == inputNum;

}

 

int main()

{

for (int i = 100; i < 1000000 ; i ++ )

{

if ( true == isNum(i) )

{

cout << i <<endl;

}

}

return 0;

}

相关知识

水仙花数
打印“水仙花数”
C++: 水仙花数
水仙花数解
【Python 123】水仙花数玫瑰数
3497. 水仙花数
打印水仙花数
Python 水仙花数练习
3.水仙花数
水仙花数(调用函数)

网址: 水仙花数求解 https://m.huajiangbk.com/newsview589749.html

所属分类:花卉
上一篇: 白兰花油和白兰叶油的GC/MS成
下一篇: 请教三年级数学题有4种颜色的花: