선생님께서 주신 문제를 아래와 같이 풀었습니다. ㅎㅎ
# 소수를 2부터 계속 더할때, 2000보다 작은 최대합은 얼마이고,
# 마지막으로 더해지는 소수는 얼마인지 출력하는 프로그램을 작성해 보자
num = 2
total = 0
flag = True
while flag :
for x in range(2,num+1) :
if num == x :
prime = num # 소수값 저장
total += num # 소수값 더하기
elif (num % x == 0) :
break
num +=1
if num + total >= 2000 : # 숫자와 + 마지막 합계의 합이 2000을 넘어가는 경우 무한 루프문을 종료하고 결과값 출력
print("소수로 더해지는 2000 이하의 최대값은 %d이며, 이때 바로 직전 소수는 %d입니다."%(total,prime))
flag = False
-결과-
소수로 더해지는 2000 이하의 최대값은 1988이며, 이때 바로 직전 소수는 137입니다.
Process finished with exit code 0