怎样求1--300中能被3 5 7整除的数

问题描述:

怎样求1--300中能被3 5 7整除的数

写个程序,让计算机帮忙。

你问的是分别能被3、5、7整除的数还是能同时被3、5、7整除的数。
1、能被3整除的最小正数为3,那么其他能被3整除的就是3的倍数,
那最大的数就是3*100=300,所以所有能被3整除的数为:
3*1=3,3*2=6,........ 3*100=300 共100个数
2、能被5整除的最小正数5,其他的是5的倍数,那最大的数
是5*60=300, 所以能被5 整除的数为:
5*1=5,5*2=10..........5*60=300 共60个数
3、能被7整除的最小正数是7,那么其他能被7整除的数是7的倍数,
最大的数是7*42=294,所以能被7整除的数为:
7*1=7,7*2=14,.........7*42=294 共42个
4、能同时被3、5、7整除的最小数是:3*5*7 = 105,那么其他的
能被3、5、7整除的数都是这个最小数的整数倍,
所以1---300中能同时倍3、5、7整除的数是:
105*1=105, 105*2=210; 共2个。

能同时被3,5,7整除的最小正整数是105,1--300中105的倍数就是能被这三个数同时整除的数.有105,210二个

能被3整除的有300/3=100个,能被5整除的有300/5=60个,能被7整除的有300/7=42个;
能同时被3和5整除的有300/15=20个,能同时被3和7整除的有300/21=14个,能被5和7同时整除的有300/35=8个;
能同时被3,5,7整除的只有105和210两个。
如果是或者关系,就需要求和然后排除重复的。
能被3或5整除的100+60-20=140个;5和7,3和7都是这样;
能被3或5或7整除的100+60+42-20-14-8+2。

一个个写...
个数的话要用到容斥原理
[300/3]+[300/5]+[300/7]-[300/15]-[300/21]-[300/35]+[300/105]=...

在1--300中能被3整除的数为:3N (0在1--300中能被5整除的数为:5N (0在1--300中能被7整除的数为:7N (0在1--300中能同时被3,5,7整除的数为:105N(0