python循环-综合案例1

这篇博客探讨了如何使用Python编程来判断一个三位数是否为水仙花数。文章首先介绍了水仙花数的概念,并提出了两种不同的实现方法,包括用户输入验证和水仙花数的计算逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、用户输入一个3位数字,判断其是否为水仙花数。

要求:

1.验证是否为三位数(暂不考虑非数字情况)

2.判断是否是水仙花数

以下代码为自己先写出来的。

while True:
    num = input("请输入一个三位整数:")

# 这一步是判断是否为三位数,整除只要百位不为0,就是三位数。(这种方法是基于对字符串长度的判断。)
    if len(num) == 3:
        num = int(num)
# 取得个位数值
        geWei = num % 10
        # print(geWei)
# 取得百位数值
        baiWei = num // 100
        # print(baiWei)
# 取得十位数值
        shiWei = (num % 100 // 10)
        # print(shiWei)
# 判断是否是水仙花数
        if baiWei ** 3 + shiWei ** 3 + geWei ** 3 == num:
            print("您输入的", num, "为水仙花数")
        else:
            print("您输入的", num, "不是水仙花数,请重新输入")
    else:
        print("您输入的数值不是三位数,请重新输入")
# 用户退出条件
    isQ = input("请问您是否继续输入?退出请按q,继续请按任意键")
    if isQ == "q":
        break
    else:
        continue

另外的一种方式:

while True:
    num = input("请输入一个三位整数:")
    num = int(num)
# 这一步是判断是否为三位数,整除只要百位不为0,就是三位数。(这种方式是通判断数值范围)
    if 99 < num < 1000:
# 取得个位数值
        geWei = num % 10
        # print(geWei)
# 取得百位数值
        baiWei = num // 100
        # print(baiWei)
# 取得十位数值
        shiWei = (num % 100 // 10)
        # print(shiWei)
# 判断是否是水仙花数
        if baiWei ** 3 + shiWei ** 3 + geWei ** 3 == num:
            print("您输入的", num, "为水仙花数")
        else:
            print("您输入的", num, "不是水仙花数,请重新输入")
    else:
        print("您输入的数值不是三位数,请重新输入")
# 用户退出条件
    isQ = input("请问您是否继续输入?退出请按q,继续请按任意键")
    if isQ == "q":
        break
    else:
        continue
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值