zoukankan      html  css  js  c++  java
  • python3练习100题——013

    熟悉的水仙花数来了,,,。。。

    原题链接:http://www.runoob.com/python/python-exercise-example13.html

    题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

    我的代码:

    def fun():
        num=[]
        for i in range(100,1000):
            a=i//100
            b=(i//10)-10*a
            c=i%10
            if a**3+b**3+c**3==i:
                num.append(i)
        return num
                
    if __name__ == '__main__':
        print(fun())

     思考:

    题目要求的水仙花数,指的是三位的自幂数。

    又实现了个想法,一次算出更多位的自幂数:

    def narcissistic():
        count=[]
        li=[]
        for i in range(100,100000):
            s=0
            number=str(i)
            for j in number:        #用了个for循环,代替上述代码取数字的每个位上的数
                s+=int(j)**len(number)
            if s==i:
                count.append(i)
        return count
                
    if __name__ == '__main__':
        print(narcissistic())

    这样,range内部的自幂数都可以算出来了。

    而且改变range也可以算,这个比上面的代码普适得多。

  • 相关阅读:
    网站负载均衡判断
    端口扫描nmap+masscan
    Ant Design Upload 组件之阻止文件默认上传
    Hybrid App技术解析
    react 路由
    webpack进阶(二)
    webpack进阶(一)
    webpack基础
    Promise原理及实现
    TS——类
  • 原文地址:https://www.cnblogs.com/drifter/p/9115369.html
Copyright © 2011-2022 走看看