• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
龍,冫
博客园    首页    新随笔    联系   管理    订阅  订阅

Python求水仙花数

num = int(input("请输入一个三位数"))
a = num % 10
b = num // 10 % 10
c = num // 100
if num == a**3 + b**3 + c**3:
    print("这是一个水仙花数")
else:
    print("这不是一个水仙花数")
#(1)输入一个3位数n
n = input("输入一个三位数")

##将字符串 转成 数值 判断 n  是否为3位数,
n = int(n)
if n > 999 or n < 100:
    print("请输入三位数")
    exit(1)

#(2)获取各个位数  123
a = (n%100)/100
b = (n%100)/10
c = n%10
#(3)计算各个位数 立方 之和sum
sum = a**3 + b**3 + c**3
#(4)判断立方和sum   和 数值n是否相等
if sum == n:
    print("是水仙花数")
else:
    print("不是水仙花数")
n = 100
while (n <= 999):
    #判断n是否为水仙花数
    a = n // 100
    b = n // 10 % 10
    c = n % 10
    sum = a**3 + b**3 + c**3
    if sum == n:
        print("%d是水仙花数"%n)

    n += 1
for n in range(100,1000):
    a = n // 100
    b = n // 10 % 10
    c = n % 10
    sum = a ** 3 + b ** 3 + c ** 3
    if sum == n:
        print("%d是水仙花数" % n)

 

posted @ 2021-04-27 18:37  龍,冫  阅读(1015)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3