栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

计算一个数字是否是水仙花数

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

计算一个数字是否是水仙花数

水仙花数定义:

        水仙花数只是自幂数的一种,严格来说3位数的3次幂数才称为水仙花数。

知识点:
  •   计算一个整数的位数    
    
count = 0
while value > 0:
    count += 1
    value //= 10
  • 获取整数每个位上的数字值

    numbers = []
    while value > 0:
        numbers.append(value % 10)
        value //= 10

最后组合在一起用于判断是否是水仙花数:
def floor(value: int)->bool:
    if value < 100 or value > 1000:
        return False
    org = value
    numbers = []
    count = 0
    while value > 0:
        numbers.append(value % 10)
        count += 1
        value //= 10
    if org == sum((x ** count for x in numbers)):
        return True
    return False
求1000以内的水仙花数:

    returns: [153, 370, 371, 407]

def find_min_floor(maximum: int)->list:
    if maximum < 100:
        return []
    return [i for i in range(100, maximum) if floor(i)]
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/294365.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号