亲密数_1 2500年前数学大师毕达哥拉斯就发现,220与284两数之间存在着奇妙的联系: 220的真因数之和为:1+2+4+5+10+11+20+22+44+55+110=284 284的真因数之和为:1+2+4+71+142=220 毕达哥拉斯把这样的数对称为相亲数。相亲数,也称为亲密数,如果整数A的全部因子(包括1,不包括A本身)之和等于B,且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。 从键盘任意输入两个整数m和n,编程判断m和n是否是亲密数。若是亲密数,则输出“Yes!”,否则输出“No!” 程序运行示例1 Input m, n: 220,284↙ Yes! 程序运行示例2Input m, n: 224,280↙ No! 输入格式: "%d,%d" 输出格式: 输入提示信息:"Input m, n:\n" 输出提示信息:"Yes!\n" "No!\n" 1
时间: 2024-03-26 14:36:05 浏览: 177
亲密数对.c
以下是实现亲密数判断的Python代码:
```python
def sum_of_factors(n):
# 计算n的所有因子之和
factors_sum = 0
for i in range(1, n):
if n % i == 0:
factors_sum += i
return factors_sum
m, n = map(int, input("Input m, n:\n").split(","))
if sum_of_factors(m) == n and sum_of_factors(n) == m:
print("Yes!")
else:
print("No!")
```
程序流程说明:
1. 定义一个计算一个整数因子之和的函数 `sum_of_factors()`,该函数的输入为一个整数n,返回值为n的所有因子之和。
2. 从键盘输入两个整数m和n。
3. 判断m的因子之和是否等于n,且n的因子之和是否等于m,若是则输出"Yes!",否则输出"No!"
阅读全文