파이썬_실전 프로젝트

프로젝트 오일러 10번문제 - 소수의 합

q-010

The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17.

Find the sum of all the primes below two million.

 

2백만 까지의 소수의 합을 구하는 문제입니다.

2백까지 루프를 만들고, 소수인지를 확인해서 더하면 되겠네요.

 

먼저 루프를 만듭니다.

def is_prime(number):
        return True

i=1;total=0
while i<2000000:
    if is_prime(i):
		total=total+i
	i+=1

 

소수체크는 3,7번 문제에서 쓴적이 있지만, 7번문제에서 속도가 개선된 코드를 가져오기로 하죠.

def is_prime(number):
    loop=round(number**0.5)
	i=2
	while i<=loop:
		if number % i == 0:
			return False
		i+=1
	if number==1:
		return False
	return True

i=1;total=0
while i<2000000:
	if is_prime(i):
		total=total+i
		print("prime nuber ",i,"sum :",total)
	i+=1

 

댓글

댓글 본문
작성자
비밀번호
버전 관리
노마드
현재 버전
선택 버전
graphittie 자세히 보기