经典编程题:求水仙花数 | 您所在的位置:网站首页 › python水仙花数编程题及答案怎么把结果横向输出 › 经典编程题:求水仙花数 |
文章目录
什么是水仙花数?用C语言如何实现?
什么是水仙花数?
水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数、自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。 用C语言如何实现?首先,先把我们的思路大概想好,分为以下几步: 1.我们要求的是0-10w内的水仙花数,那就要用到循环 2.求i这个数字的位数 3.把这个多位数每位的数分解然后各自求三次方然后求和 4.判断 #include #include int main() { for(i=0;i num++;//计算位数 n=n/10; } n=i;//重置n,防止死循环 int sum=0; while(n) { sum=sum+pow(n%10,num);//计算各位数三次方的和 n=n/10; } if(sum==i) printf("%d ",i); } return 0; }结果如下: 0 1 2 3 4 5 6 7 8 9 153 370 371 407 1634 8208 9474 54748 92727 93084 这样子我们就把水仙花数求出来啦!但是该过程没运用函数调用,希望读者自行优化,喜欢的记得三连哦! |
CopyRight 2018-2019 实验室设备网 版权所有 |