输出1到n之间能被17整除的最大数
时间: 2023-11-11 18:06:42 浏览: 182
假设n为一个正整数,我们可以从n开始往前遍历,找到第一个能被17整除的数,即为所求。
代码实现如下:
```python
n = int(input("请输入正整数n:"))
for i in range(n, 0, -1):
if i % 17 == 0:
print("1到n之间能被17整除的最大数为:", i)
break
else:
print("1到n之间没有能被17整除的数")
```
举个例子,如果输入n为100,则输出为85,因为85是100到1之间第一个能被17整除的数。
相关问题
python编程:编程输出1到n(包括n)之间能被17整除的最大数并统计个数
以下是 Python 代码实现:
```python
n = int(input("请输入一个正整数n: "))
count = 0
max_num = 0
for i in range(1, n+1):
if i % 17 == 0:
count += 1
max_num = i
print("1到{}之间能被17整除的最大数为{},共有{}个数能被17整除。".format(n, max_num, count))
```
代码解析:
首先,我们需要让用户输入一个正整数n,然后使用 for 循环从1到n进行遍历,判断每个数是否能被17整除,如果能被整除,则将计数器 count 加1,并将当前数值赋值给变量 max_num,最后输出结果。
运行示例:
```
请输入一个正整数n: 100
1到100之间能被17整除的最大数为85,共有6个数能被17整除。
```
输入正整数N和M (0< N < M <=100000),请输出N到M(含N和M)之间能被2和3同时整除但不能被7整除的数的个数。
根据你的要求,我们可以使用上面提到计算方法,得出被2和3同时整除但不能被7整除的数的个数为:
((M//6) - (N-1)//6) - ((M//42) - (N-1)//42)
其中,// 表示整除符号。具体解释如下:
- M//6 表示不大于 M 的、能被 2 和 3 同时整除的最大整数;
- (N-1)//6 表示小于 N 的、能被 2 和 3 同时整除的最大整数;
- M//42 表示不大于 M 的、能被 2、3 和 7 同时整除的最大整数;
- (N-1)//42 表示小于 N 的、能被 2、3 和 7 同时整除的最大整数。
因此,我们可以通过以上公式计算出 N 到 M 之间能被 2 和 3 同时整除但不能被 7 整除的数的个数。具体实现可以使用以下 Python 代码:
``` python
N, M = map(int, input().split())
count = ((M//6) - (N-1)//6) - ((M//42) - (N-1)//42)
print(count)
```
希望能够帮助到你!
阅读全文