写点什么

Python 实现水仙花数的查找与验证

  • 2024-05-15
    北京
  • 本文字数:726 字

    阅读完需:约 2 分钟

更多软件测试学习资料戳

水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。例如,153 是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。

本文将使用 Python 编程实现水仙花数的查找与验证,涉及到运算符、循环语句、分支语句和函数的使用。

水仙花数的验证函数

我们首先定义一个函数,用于验证一个数字是否是水仙花数。函数接受一个整数作为参数,返回 True 或 False 表示是否是水仙花数。

def is_armstrong_number(num):    # 将数字转换为字符串,并计算每一位数字的立方和    digit_sum = sum(int(digit) ** len(str(num)) for digit in str(num))    # 判断是否等于原数字    return digit_sum == num
复制代码

查找水仙花数

然后,我们编写一个函数来查找指定范围内的所有水仙花数,并将它们打印出来

def find_armstrong_numbers(start, end):    armstrong_numbers = []    for num in range(start, end + 1):        if is_armstrong_number(num):            armstrong_numbers.append(num)    return armstrong_numbers
复制代码

主程序

最后,我们编写一个主程序来调用上述函数,并输出查找到的水仙花数。

start = 100  # 起始范围end = 999    # 结束范围
armstrong_numbers = find_armstrong_numbers(start, end)
if armstrong_numbers: print(f"在范围 {start} 到 {end} 内的水仙花数有:{armstrong_numbers}")else: print(f"在范围 {start} 到 {end} 内没有找到水仙花数")
复制代码

运行以上代码,即可输出在指定范围内的所有水仙花数。

通过这个简单的示例,读者可以学习到如何使用 Python 中的运算符、循环语句、分支语句和函数来查找和验证水仙花数。这是一个很好的练习,可以帮助提升对 Python 编程的理解和技能。


用户头像

社区:ceshiren.com 微信:ceshiren2023 2022-08-29 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料、实事更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬

评论

发布
暂无评论
Python实现水仙花数的查找与验证_测试_测吧(北京)科技有限公司_InfoQ写作社区