用Python写 输入一个正整数n,判断其是否为黑洞数
时间: 2024-10-16 17:11:28 浏览: 55
python判断所输入的任意一个正整数是否为素数的两种方法
5星 · 资源好评率100%
黑洞数是指那些所有小于它的数(除了1以外)相加起来正好等于该数本身的数。例如,数字15就是一个黑洞数,因为1 + 2 + 3 + 4 + 5 = 15。
下面是一个简单的Python程序,用于判断给定的正整数 `n` 是否为黑洞数:
```python
def is_black_hole_number(n):
# 检查n是否小于2,如果是,直接返回False,因为黑洞数定义中n大于1
if n < 2:
return False
# 初始化sum为1,表示已知1会添加到总和中
total_sum = 1
i = 2 # 开始从2开始加
# 当i小于n时继续循环
while i < n:
# 如果当前i能被n整除,则将其加入总和
if n % i == 0:
total_sum += i
i += 1
# 判断total_sum是否等于n
return total_sum == n
# 用户输入
num = int(input("请输入一个正整数:"))
if is_black_hole_number(num):
print(f"{num}是黑洞数")
else:
print(f"{num}不是黑洞数")
阅读全文