Python教程

Python123第四章小作业——三位水仙花数

本文主要是介绍Python123第四章小作业——三位水仙花数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

第一题:https://mp.csdn.net/mp_blog/creation/editor/121114307

第二题:

要求:

"水仙花数"是指一个三位整数,其各位数字的3次方和等于该数本身。‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‫‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

例如:ABC是一个"3位水仙花数",则:A的3次方+B的3次方+C的3次方 = ABC。‪‪‪‪‪‫‫‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‫‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

请按照从小到大的顺序输出所有的3位水仙花数,请用"逗号"分隔输出结果。‪‪‪‪‪‫‫‪‪‪‪‪‪ 【题目来源Python123】


代码如下:

s=""
for a in range(1,10):
    for b in range(10):
        for c in range(10):
            l=a*100+b*10+c
            if a**3+b**3+c**3==l:
                print(s,end="")
                print(l,end='')
                s=","

 


效果图:

最后得出的结果:

153,370,371,407


第三题  四位玫瑰数

题目要求:

四位玫瑰数是4位数的自幂数。自幂数是指一个 n 位数,它的每个位上的数字的 n 次幂之和等于它本身。‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‫‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

例如:当n为3时,有1^3 + 5^3 + 3^3 = 153,153即是n为3时的一个自幂数,3位数的自幂数被称为水仙花数。‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‫‫‪‪‪‪‪‫‪‪‪‪‪‫‪‪‪‪‪‫‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬

请输出所有4位数的四位玫瑰数,按照从小到大顺序,每个数字一行。‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‪‫‫‪‪‪‪‪‫‪‪‪‪‪‫

‪‪‪‪‪‫for a in range(10):
    for b in range(10):
        for c in range(10):
            for d in range(10):
                l=a*1000+b*100+c*10+d
                s=a**4+b**4+c**4+d**4
                if l==s and len(str(l))==4:
                    print(l)


这篇关于Python123第四章小作业——三位水仙花数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!