在中国大学慕课上面·遇到了这个题目。
***题目描述***:
- 四位玫瑰数是4位数的自幂数。自幂数是指一个 n 位数,它的每个位上的数字的 n 次幂之和等于它本身。
例如:当n为3时,有1^3 + 5^3 + 3^3 = 153,153即是n为3时的一个自幂数,3位数的自幂数被称为水仙花数。
请输出所有4位数的四位玫瑰数,按照从小到大顺序,每个数字一行
**
在论坛上面也看到有相关程序算法,做题的时候脑袋比较蒙,还有时间限制,所以就直接套用别人的成果完成题目了(强烈不建议这样做),做完后自己花时间琢磨了一下,先把自己写的程序贴出来,一是记录,以后能看,二是分享,以偿还自己偷别的博主代码。。。。
**
- 程序代码*
**#计算玫瑰数字
- for i in range(1000,10000):
while pow(eval(str(i)[0]),4) + pow(eval(str(i)[1]),4) +
pow(eval(str(i)[2]),4) + pow(eval(str(i)[3]),4) =