Python 判断三位水仙花数

复制代码
 1 # 判断水仙花数
 2 
 3 """
 4 介绍:
 5     水仙花数是一个三位数,它的每位数字的3次幂之和等于它本身。
 6     例如:153 == (1 ** 3) + (5 ** 3) + (3 ** 3)
 7 
 8 知识点:
 9     1、算术运算符:幂,符号'**';整除,符号'//'; 取余,符号'%'
10     2、if/else 条件语句
11     3、类型转换
12     4、while 循环
13 """
14 
15 while True:
16 
17     # 带提示输入赋值
18     num = float(input('请输入三位数整数:'))
19 
20     # 判断是否为整数
21     if num > int(num):
22         print('{}不是整数!!!'.format(num))
23         continue  # 结束本次循环,开始下次循环
24 
25     # 判断是否为三位数
26     if num < 100 or num > 999:
27         print('{}不是三位正整数!!!' .format(int(num)))
28         continue            # 结束本次循环,开始下次循环
29 
30     # 位数分离
31     units = num % 10  # 分离个位
32     tens = num % 100 // 10  # 分离十位
33     hundreds = num // 100  # 分离百位
34 
35     # 判断是否为水仙花数
36     if num == (units ** 3) + (tens ** 3) + (hundreds ** 3):
37 
38         print('{}是水仙花数' .format(int(num)))  # float转化int输出
39 
40     else:
41 
42         print('{:.0f}不是水仙花数' .format(num))  # 保留0位小数输出
复制代码

 

运行结果:

 

posted @   周华2022  阅读(644)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示