python编写程序,从键盘输入一个整数并判断该数的类别:其真因子之和等于数字本身的数称为完全数;比数字本身大的数称为丰沛数;比数字本身小的数称为不足数。真因子是指不包括本身在内的约数。
时间: 2024-10-09 16:04:39 浏览: 97
算法-求正整数2和n之间的完全数(信息学奥赛一本通-T1150).rar
5星 · 资源好评率100%
在Python中,我们可以编写一个简单的程序来完成这个任务。首先,我们需要获取用户的输入,然后遍历所有小于输入数字的因子,检查它们是否为真因子,并计算和。以下是代码示例:
```python
def classify_number(num):
def is_factor(n):
return num % n == 0 and n != num
factors_sum = sum(is_factor(i) for i in range(1, num)) # 真因子之和
if factors_sum == num:
classification = "完全数"
elif factors_sum > num:
classification = "丰沛数"
else:
classification = "不足数"
return classification, factors_sum
num = int(input("请输入一个整数:"))
classification, factors_sum = classify_number(num)
print(f"数字 {num} 是一个{classification},其真因子之和为 {factors_sum}")
```
当你运行这个程序并输入一个整数,它将返回该数的分类以及其真因子之和。
阅读全文