Hello大家好,我是退休的Coder,感谢大家阅读Python每日一练系列的文章,这个系列的文章为了帮助一些Python小白快速掌握一些基础算法的编写。
希望大家能够坚持下去,学习编程不是一朝一夕的,需要去不断的练习,不断的思考,总结经验。
今天我们一起练习第二个程序,输出所有的四叶玫瑰数。

四叶玫瑰数是指一个四位数,每个数位上的数字的四次方之和等于本身的数。
看到这里是不是感觉和水仙花数很相似,如果让你输出所有的四叶玫瑰数,只需要简单的把水仙花的算法修改一下就可以了。


解题思路
输出所有的四叶玫瑰数,我们就把所有的四位数都循环遍历一下。
每次循环遍历的时候,把这个四位数字中的千位数、百位数、十位数、个位数数字都取到。
判断一下是否满足每位数字的四次方之和等于它本身,如果等于它本身说明就是四叶玫瑰数。

代码实现
for i in range(1000,10000):
#取千位数字
a = i//1000
#取百位数字
b = i//100%10
#取十位数字
c = i//10%10
#取个位数字
d = i%10
if a**4+b**4+c**4+d**4 == i:
print(f'{i}是四叶玫瑰数')
ps:当然还可以在每次循环中,先把四位数转化成字符串,通过字符串的索引可以很方便的找到每位数字,做运算时用int()转化一下。
这就是Python每日一练系列第二天的内容,题目还是一样简单,这个系列的练习题是成梯度的,难度会一点点的去提升,希望能够给在学习路上的小伙伴一点帮助。

感谢大家,我是退休的Coder,明天见!
想要看视频讲解,可以去我的B站主页观看。
B站搜索:退休的Coder


扫描二维码
获取更多技术干货
退休的Coder
点个在看你最好看
文章转载自退休的Coder,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




