Python编程经典案例【考题】求某个范围内能被3整除且能被5整除的所有数,及这些数的和

本文和你一起探索Python编程经典案例,让你沉浸式学习Python。

你可以拿着题目先思考,然后再对照本文解题方法进行比较。有不同的见解欢迎到公众号中跟我一起探讨。

本文目录
  1. 经典案例【考题】

  2. 经典案例解题方法

    2.1 通过for循环求出满足条件的数并求和

    2.2 通过for循环求出满足条件的数存到列表中并求和


一、经典案例【考题】
问题:
1000中能被3整除且能被5整除的所有正整数及这些数的和
输入:

1000

输出:
1000中能被3整除且能被5整除的正整数有 151000中能被3整除且能被5整除的正整数有 301000中能被3整除且能被5整除的正整数有 451000中能被3整除且能被5整除的正整数有 601000中能被3整除且能被5整除的正整数有 751000中能被3整除且能被5整除的正整数有 901000中能被3整除且能被5整除的正整数有 1051000中能被3整除且能被5整除的正整数有 1201000中能被3整除且能被5整除的正整数有 1351000中能被3整除且能被5整除的正整数有 1501000中能被3整除且能被5整除的正整数有 1651000中能被3整除且能被5整除的正整数有 1801000中能被3整除且能被5整除的正整数有 1951000中能被3整除且能被5整除的正整数有 2101000中能被3整除且能被5整除的正整数有 2251000中能被3整除且能被5整除的正整数有 2401000中能被3整除且能被5整除的正整数有 2551000中能被3整除且能被5整除的正整数有 2701000中能被3整除且能被5整除的正整数有 2851000中能被3整除且能被5整除的正整数有 3001000中能被3整除且能被5整除的正整数有 3151000中能被3整除且能被5整除的正整数有 3301000中能被3整除且能被5整除的正整数有 3451000中能被3整除且能被5整除的正整数有 3601000中能被3整除且能被5整除的正整数有 3751000中能被3整除且能被5整除的正整数有 3901000中能被3整除且能被5整除的正整数有 4051000中能被3整除且能被5整除的正整数有 4201000中能被3整除且能被5整除的正整数有 4351000中能被3整除且能被5整除的正整数有 4501000中能被3整除且能被5整除的正整数有 4651000中能被3整除且能被5整除的正整数有 4801000中能被3整除且能被5整除的正整数有 4951000中能被3整除且能被5整除的正整数有 5101000中能被3整除且能被5整除的正整数有 5251000中能被3整除且能被5整除的正整数有 5401000中能被3整除且能被5整除的正整数有 5551000中能被3整除且能被5整除的正整数有 5701000中能被3整除且能被5整除的正整数有 5851000中能被3整除且能被5整除的正整数有 6001000中能被3整除且能被5整除的正整数有 6151000中能被3整除且能被5整除的正整数有 6301000中能被3整除且能被5整除的正整数有 6451000中能被3整除且能被5整除的正整数有 6601000中能被3整除且能被5整除的正整数有 6751000中能被3整除且能被5整除的正整数有 6901000中能被3整除且能被5整除的正整数有 7051000中能被3整除且能被5整除的正整数有 7201000中能被3整除且能被5整除的正整数有 7351000中能被3整除且能被5整除的正整数有 7501000中能被3整除且能被5整除的正整数有 7651000中能被3整除且能被5整除的正整数有 7801000中能被3整除且能被5整除的正整数有 7951000中能被3整除且能被5整除的正整数有 8101000中能被3整除且能被5整除的正整数有 8251000中能被3整除且能被5整除的正整数有 8401000中能被3整除且能被5整除的正整数有 8551000中能被3整除且能被5整除的正整数有 8701000中能被3整除且能被5整除的正整数有 8851000中能被3整除且能被5整除的正整数有 9001000中能被3整除且能被5整除的正整数有 9151000中能被3整除且能被5整除的正整数有 9301000中能被3整除且能被5整除的正整数有 9451000中能被3整除且能被5整除的正整数有 9601000中能被3整除且能被5整除的正整数有 9751000中能被3整除且能被5整除的正整数有 9901000中能被3整除且能被5整除的所有正整数的和= 33165

二、经典案例解题方法

 1   方法一:应用for循环求出满足条件的数并求和

上述案例第一种解题思路为:

step1:应用for循环列举出该区间中的所有数。

step2:应用if语句判断数是否既能被3整除,又能被5整除,若能则打印出该数,并统计到求和参数中

具体代码如下:

num = int(input('请输入区间的最大值'))sum_num = 0for i in range(1, num+1):    if i % 3==0 and i % 5 == 0:        print('1000中能被3整除且能被5整除的正整数有',i)        sum_num += iprint('1000中能被3整除且能被5整除的所有正整数的和=', sum_num)   

input('请输入范围的最大值'):手动输入待求区间的最大值。

i % 3==0:判读i是否整除3,若能则返回True,否则返回False。

若手动输入区间最大值是100,得到结果:

请输入范围的最大值1001000中能被3整除且能被5整除的正整数有 151000中能被3整除且能被5整除的正整数有 301000中能被3整除且能被5整除的正整数有 451000中能被3整除且能被5整除的正整数有 601000中能被3整除且能被5整除的正整数有 751000中能被3整除且能被5整除的正整数有 901000中能被3整除且能被5整除的所有正整数的和= 315

可以手动验证结果是对的。该方法的优点是逻辑简单,理解起来比较清晰。


 2   方法二:通过for循环求出满足条件的数存到列表中并求和

上述案例第二种解题思路为:

  • step1:应用for循环列举出该区间中的所有数。

  • step2:应用if语句判断数是否既能被3整除,又能被5整除,若能则把该数添加到列表中。

  • step3:打印列表和列表求和结果。

具体代码如下:

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,得到结果:

请输入范围的最大值10001000中能被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整除的所有数,及这些数的和已讲解完毕。

如想了解更多Python中的函数,可以翻看公众号中“学习Python”模块相关文章。
往期回顾:
520表白代码合集
一文囊括Python中的函数,持续更新。。。
一文囊括Python中的有趣案例,持续更新。。。
让你彻底弄懂Python编程经典案例【考题】之反转一个值
Python编程经典案例【考题】自由落体运动球的运动轨迹
六一儿童节来临,送大朋友小朋友一只最近爆火的“可达鸭”



扫一扫关注我

13162366985

投稿微信号、手机号

请使用浏览器的分享功能分享到微信等