本文和你一起探索Python编程经典案例,让你沉浸式学习Python。
你可以拿着题目先思考,然后再对照本文解题方法进行比较。有不同的见解欢迎跟我一起探讨。
本文目录
一、经典案例【考题】
问题:1000中能被3整除且能被5整除的所有正整数及这些数的和
输入:
1000
输出:
1000中能被3整除且能被5整除的正整数有 15
1000中能被3整除且能被5整除的正整数有 30
1000中能被3整除且能被5整除的正整数有 45
1000中能被3整除且能被5整除的正整数有 60
1000中能被3整除且能被5整除的正整数有 75
1000中能被3整除且能被5整除的正整数有 90
1000中能被3整除且能被5整除的正整数有 105
1000中能被3整除且能被5整除的正整数有 120
1000中能被3整除且能被5整除的正整数有 135
1000中能被3整除且能被5整除的正整数有 150
1000中能被3整除且能被5整除的正整数有 165
1000中能被3整除且能被5整除的正整数有 180
1000中能被3整除且能被5整除的正整数有 195
1000中能被3整除且能被5整除的正整数有 210
1000中能被3整除且能被5整除的正整数有 225
1000中能被3整除且能被5整除的正整数有 240
1000中能被3整除且能被5整除的正整数有 255
1000中能被3整除且能被5整除的正整数有 270
1000中能被3整除且能被5整除的正整数有 285
1000中能被3整除且能被5整除的正整数有 300
1000中能被3整除且能被5整除的正整数有 315
1000中能被3整除且能被5整除的正整数有 330
1000中能被3整除且能被5整除的正整数有 345
1000中能被3整除且能被5整除的正整数有 360
1000中能被3整除且能被5整除的正整数有 375
1000中能被3整除且能被5整除的正整数有 390
1000中能被3整除且能被5整除的正整数有 405
1000中能被3整除且能被5整除的正整数有 420
1000中能被3整除且能被5整除的正整数有 435
1000中能被3整除且能被5整除的正整数有 450
1000中能被3整除且能被5整除的正整数有 465
1000中能被3整除且能被5整除的正整数有 480
1000中能被3整除且能被5整除的正整数有 495
1000中能被3整除且能被5整除的正整数有 510
1000中能被3整除且能被5整除的正整数有 525
1000中能被3整除且能被5整除的正整数有 540
1000中能被3整除且能被5整除的正整数有 555
1000中能被3整除且能被5整除的正整数有 570
1000中能被3整除且能被5整除的正整数有 585
1000中能被3整除且能被5整除的正整数有 600
1000中能被3整除且能被5整除的正整数有 615
1000中能被3整除且能被5整除的正整数有 630
1000中能被3整除且能被5整除的正整数有 645
1000中能被3整除且能被5整除的正整数有 660
1000中能被3整除且能被5整除的正整数有 675
1000中能被3整除且能被5整除的正整数有 690
1000中能被3整除且能被5整除的正整数有 705
1000中能被3整除且能被5整除的正整数有 720
1000中能被3整除且能被5整除的正整数有 735
1000中能被3整除且能被5整除的正整数有 750
1000中能被3整除且能被5整除的正整数有 765
1000中能被3整除且能被5整除的正整数有 780
1000中能被3整除且能被5整除的正整数有 795
1000中能被3整除且能被5整除的正整数有 810
1000中能被3整除且能被5整除的正整数有 825
1000中能被3整除且能被5整除的正整数有 840
1000中能被3整除且能被5整除的正整数有 855
1000中能被3整除且能被5整除的正整数有 870
1000中能被3整除且能被5整除的正整数有 885
1000中能被3整除且能被5整除的正整数有 900
1000中能被3整除且能被5整除的正整数有 915
1000中能被3整除且能被5整除的正整数有 930
1000中能被3整除且能被5整除的正整数有 945
1000中能被3整除且能被5整除的正整数有 960
1000中能被3整除且能被5整除的正整数有 975
1000中能被3整除且能被5整除的正整数有 990
1000中能被3整除且能被5整除的所有正整数的和= 33165
二、经典案例解题方法
1 方法一:应用for循环求出满足条件的数并求和
上述案例第一种解题思路为:
step1:应用for循环列举出该区间中的所有数。
step2:应用if语句判断数是否既能被3整除,又能被5整除,若能则打印出该数,并统计到求和参数中。
具体代码如下:
num = int(input('请输入区间的最大值'))
sum_num = 0
for i in range(1, num+1):
if i % 3==0 and i % 5 == 0:
print('1000中能被3整除且能被5整除的正整数有',i)
sum_num += i
print('1000中能被3整除且能被5整除的所有正整数的和=', sum_num)
input('请输入范围的最大值'):手动输入待求区间的最大值。
i % 3==0:判读i是否整除3,若能则返回True,否则返回False。
若手动输入区间最大值是100,得到结果:
请输入范围的最大值100
1000中能被3整除且能被5整除的正整数有 15
1000中能被3整除且能被5整除的正整数有 30
1000中能被3整除且能被5整除的正整数有 45
1000中能被3整除且能被5整除的正整数有 60
1000中能被3整除且能被5整除的正整数有 75
1000中能被3整除且能被5整除的正整数有 90
1000中能被3整除且能被5整除的所有正整数的和= 315
可以手动验证结果是对的。该方法的优点是逻辑简单,理解起来比较清晰。
2 方法二:通过for循环求出满足条件的数存到列表中并求和
上述案例第二种解题思路为:
具体代码如下:
num = int(input('请输入区间的最大值'))
num_list = []
for i in range(1, num+1):
if i % 3==0 and i % 5 == 0:
#print('1000中能被3整除且能被5整除的正整数有',i)
num_list.append(i)
print('1000中能被3整除且能被5整除的正整数列表如下:')
print(num_list)
print('1000中能被3整除且能被5整除的所有正整数的和=', sum(num_list))
若手动日期为1000,得到结果:
请输入范围的最大值1000
1000中能被3整除且能被5整除的正整数列表如下:
[15, 30, 45, 60, 75, 90, 105, 120, 135, 150, 165, 180, 195, 210, 225, 240, 255, 270, 285, 300, 315, 330, 345, 360, 375, 390, 405, 420, 435, 450, 465, 480, 495, 510, 525, 540, 555, 570, 585, 600, 615, 630, 645, 660, 675, 690, 705, 720, 735, 750, 765, 780, 795, 810, 825, 840, 855, 870, 885, 900, 915, 930, 945, 960, 975, 990]
1000中能被3整除且能被5整除的所有正整数的和= 33165
可以手动验证结果是对的,感兴趣的朋友也可以把代码复制到Python中去,输入别的数值进行验证。
至此,Python中的编程经典案例【考题】求某个范围内能被3整除且能被5整除的所有数,及这些数的和已讲解完毕。