다음은 소수를위한 간단한 eratosthenes 체이며 배수를 제거하고 배수의 빈 목록에 추가합니다. 내 질문은 만약 내가 루프에서 n+1
대신에 n
을 사용하면 대답은 똑같이 나온다.이 eratosthenes 함수에서 n + 1을 사용하는 목적은 무엇입니까?
eratosthenes(10)
2
3
5
7
등
def eratosthenes(n):
multiples = []
for i in xrange(2, n+1):
if i not in multiples:
print i
for j in xrange(i*i, n+1, i):
multiples.append(j)
복귀 출력 I는 모두 n
으로 n+1
교체하면하면서 출력이 여전히 동일 루프 :
def eratosthenes(n):
multiples = []
for i in xrange(2, n):
if i not in multiples:
print i
for j in xrange(i*i, n, i):
multiples.append(j)
함수 상기와 같은 결과를 반환한다 .. .
eratosthenes(10)
2
3
5
7
내 질문에 n
대신 n+1
을 사용하는 이유는 무엇입니까?
'eratosthenes (11)'을 시도하고 그 차이점을 비교하십시오. – RussW