第八篇:使用Python找出水仙花数

Python小案例

一、前置内容

水仙花数(Narcissistic number)也被称为超完全数字不变数(pluperfect digital invariant, PPDI)、自恋数自幂数、阿姆斯壮数或阿姆斯特朗数(Armstrong number),水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1^3 + 5^3+ 3^3 = 153。

1.1、遍历循环

image.png

for i in range(5):  
print(i)

1.2、无限循环

image.png

while(True):
print(1)

1.3、循环控制保留字

image.png

1.4、循环的高级用法

image.png

image.png

二、案例需求

了解到水仙花数后,我想找出1000之内的水仙花数.
输入 : 无
输出 :
153
370
371
407

三、案例分析与解决过程

1、怎么将三位数的百位、十位、个位分别获取出来?
答案:
获取百位直接//100就得到了百位
获取十位直接%100得到十位+个位,然后对剩下的十位+个位//10就得到了十位
获取个位直接对%10

2、怎么将范围限定到100到1000以内
答案:使用for i in range(100 , 1000) , 意思是遍历100到999

四、完整代码


# 寻找1000之内的水仙花数  
  
  
for i in range(100 , 1000) :  
# 获取百位  
bai = i // 100  
# 获取十位  
shi = i % 100 // 10  
# 获取个位  
ge = i % 10  
# 求取每个数的三次方  
result = pow(bai , 3 ) + pow(shi ,3 ) + pow(ge , 3);  
# 判断是不是水仙花数字  
if(i == result):  
print(i)

五、检验与验收代码

image.png

image.png

image.png

六、复盘所学知识

1、for i in range(N) 遍历N-1次

© 版权声明
THE END
喜欢就支持一下吧
点赞0

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MY7BNOIv' (Errcode: 28 - No space left on device) in /www/wwwroot/583.cn/wp-includes/class-wpdb.php on line 2345
admin的头像-五八三
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

图形验证码
取消
昵称代码图片