美文网首页
Day038|Python小例子之求解水仙花数

Day038|Python小例子之求解水仙花数

作者: 龙渊的宝藏 | 来源:发表于2021-04-02 23:54 被阅读0次

    今天是Andy学Python的第38 天哦! 

    大家好,我是Andy。 

    01.

    项目需求

    所谓“水仙花数”是指一个三位数,其各位数字的3次幂之和等于该数本身。

    例如:1^3 + 5^3+ 3^3 = 153

    要求:输出100-999之间所有的水仙花数。

    02.

    分解任务

    一是将三位数拆解成各位数字。

    设一个百位数123,其百位数为1,123//100,整除其商为百位数字。

    十位数为2,123%100//10,原数除以100的余数再整除10的商。

    个位数为3,123%100%10,原数除以100的余数再除以10的余数。

    二是将各位数字的3次幂相加求其和sum。

    三是判断sum与原数字本身是否相等,相等则输出该值。

    四是使用for...in range(100,1000),将结果输出列表。

    03.

    代码实现

    s = []

    for i in range(100,1000):

        a = i // 100

        b = i % 100 //10

        c = i %100 %10

        if a ** 3 + b ** 3 + c ** 3 == 100 * a + 10 * b + c:

            s.append(100 * a + 10 * b + c)

    print(s)

    51Day Day up!

    向上向善,日进一步!

    每天学习,努力成长!

    定个小目标,开启成长的旅程,遇见更好的自己。

    这是我们和自己的约定,许诺自己不负韶华。

    路虽远,行则将至;事虽难,做则必成。

    成长的最好时机,就是当下。

    相关文章

      网友评论

          本文标题:Day038|Python小例子之求解水仙花数

          本文链接:https://www.haomeiwen.com/subject/anwohltx.html