编写python程序,打印1~1000的所有"完全数"。所谓"完全数"指这个数等于它的因子之和(其中,因子包括1,不包括它本身) 编写程序,求100以内所有的素数之和。
时间: 2024-05-09 09:18:42 浏览: 103
python如何求100以内的素数
打印1~1000的所有"完全数"的程序:
```python
# 求一个数的因子之和
def factor_sum(n):
factors = [1]
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
factors.append(i)
if i != n // i:
factors.append(n // i)
return sum(factors)
# 找出1~1000的所有完全数
for i in range(1, 1001):
if factor_sum(i) == i:
print(i)
```
求100以内所有的素数之和的程序:
```python
# 判断一个数是否为素数
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
# 找出100以内的所有素数
primes = [i for i in range(2, 101) if is_prime(i)]
# 计算素数之和
sum_of_primes = sum(primes)
print(sum_of_primes)
```
输出结果为:1060
阅读全文