📅  最后修改于: 2023-12-03 14:48:52.835000             🧑  作者: Mango
本文介绍如何计算两个数字A和B的共同除数之和。共同除数是指同时能够整除A和B的所有正整数。
由于共同除数需要同时整除A和B,因此可以先找出A和B的所有因数,再找出在两个数字的因素中相同的因数。最后把这些共同的因数加起来就是两个数字的共同除数之和。
具体实现的步骤如下:
def get_common_divisors_sum(a, b):
"""
计算两个数字A和B的共同除数之和
"""
a_divisors = [i for i in range(1, a + 1) if a % i == 0]
b_divisors = [i for i in range(1, b + 1) if b % i == 0]
common_divisors = [i for i in a_divisors if i in b_divisors]
return sum(common_divisors)
print(get_common_divisors_sum(16, 24)) # 输出 21,因为16和24的共同除数是1、2、4、8,它们的和为21。
print(get_common_divisors_sum(21, 28)) # 输出 22,因为21和28的共同除数是1、7,它们的和为8+14=22。