描述
求100以内所有素数之和并输出。
素数指从大于1,且仅能被1和自己整除的整数。
提示:可以逐一判断100以内每个数是否为素数,然后求和。
输入格式
该题目没有输入
输入输出示例
输入 | 输出 | |
示例 1 | 1234(这是示例,不是真实输出) |
解析思路:
这个题可以巧妙的运用for...else...这歌循环的高级用法,不多说,看代码就明白了;当然也可以运用一般方法,先确认是否是素数,再行求和。两者方法都不错,喜欢哪一个就用哪一个。
代码如下:
for...else...:
#PrimeSum.py
sum = 0
for i in range(2,100):
for k in range(2,i):
if i % k == 0:
break
else: #是正常退出的都是素数,然后都求和就可以了
sum += i
print(sum)
一般方法:
#PrimeSum.py
def prime(k):
for i in range(2,k):
if k % i == 0:
return False
return True
sum = 0
for i in range(2,100):
if prime(i):
sum += i
print(sum)