读入正整数n,然后读入n个正整数a1,a2 ... an。对每个正整数ai,输出ai的约数和。
时间: 2024-12-20 08:16:27 浏览: 19
当你需要编写一个程序来解决这个问题时,通常会采用循环和条件判断的方式来实现。以下是用Python的一个简单示例:
```python
def count_divisors(n):
# 初始化一个空列表来存储结果
divisors = []
for i in range(1, n + 1): # 遍历从1到n的所有数
if n % i == 0: # 如果i能整除n
divisors.append(i) # 将i添加到因子列表中
# 计算并返回因子的个数
return len(divisors)
# 主函数,读取输入并调用count_divisors函数
def main():
n = int(input("请输入一个正整数:"))
divisor_sum = 0
# 对于每一个输入的正整数,计算其约数并累加
for ai in range(1, n+1):
ai_factors = count_divisors(ai)
divisor_sum += ai_factors
print(f"所有正整数{', '.join(map(str, [ai for ai in range(1, n+1)]))}的约数和总和是:{divisor_sum}")
if __name__ == "__main__":
main()
```
在这个程序中,我们首先读入一个正整数`n`,然后对每一个正整数`ai`,我们调用`count_divisors`函数来找出它的约数,并将所有`ai`的约数个数相加得到总和。
阅读全文