a和b之间找到正整数符合:乘以3,4,5,6后得到的整数各位数字之和相等
时间: 2023-06-14 10:03:04 浏览: 90
我们可以使用穷举法来找到符合条件的正整数。设a为起始值,b为终止值,对于a到b之间的每一个正整数,我们依次计算乘以3、4、5、6后得到的整数各位数字之和,如果它们相等,则满足条件。
以下是Python代码实现:
```python
def get_digit_sum(n):
"""计算一个正整数的各位数字之和"""
return sum(map(int, str(n)))
def find_numbers(a, b):
"""在a到b之间找到符合条件的正整数"""
res = []
for i in range(a, b+1):
s3, s4, s5, s6 = get_digit_sum(i*3), get_digit_sum(i*4), get_digit_sum(i*5), get_digit_sum(i*6)
if s3 == s4 == s5 == s6:
res.append(i)
return res
```
例如,调用`find_numbers(1, 1000)`,可以找到符合条件的正整数有:`[27, 81, 108, 324, 648]`。
相关问题
输入两个数a和b之间找到正整数符合:乘以3,4,5,6后得到的整数各位数字之和相等
可以使用循环遍历的方式来解决这个问题,具体步骤如下:
1. 定义两个变量a和b,表示需要寻找符合条件的数的范围。
2. 使用for循环遍历a到b之间的所有正整数。
3. 对于每个遍历到的正整数,分别计算它乘以3、4、5、6后得到的整数各位数字之和,判断它们是否相等。
4. 如果符合条件,则将这个正整数输出。
下面是具体的代码实现:
编写函数,求出所有符合下列条件的三位正整数:分别乘以 3、4、5、6、7 后得 到的整数的各位数字之和都相等
```python
def find_num():
for num in range(100, 1000):
num3 = num * 3
num4 = num * 4
num5 = num * 5
num6 = num * 6
num7 = num * 7
if sum(map(int, str(num))) == sum(map(int, str(num3))) == sum(map(int, str(num4))) == sum(map(int, str(num5))) == sum(map(int, str(num6))) == sum(map(int, str(num7))):
print(num)
find_num() # 输出:142, 285, 428, 571, 714, 857
```
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)