텍스트 6번 문제 ==============================================
' 문제 : 입력받은 정수의 모든 약수의 합을 리턴하는 함수를 구현해주세요.
def get_divisors_sum(num):
s = 0
i = 1
''' 구현 '''
while i <= num : # 1부터 1000까지 증가
if num % i == 0 : # 나머지가 0 이 되는 숫자만 합계
s += i # 합계 변수에 소수 누적 합
#print(" {} " .format(i))
i += 1
return s
s = get_divisors_sum(1000)
print("정수 1000의 약수의 합 : {}".format(s))
'' 출력 => 정수 1000의 약수의 합 : 2340
텍스트 7번 문제 =============================
' 입력받은 정수가 소수인지 아닌지 알려주는 함수를 구현해주세요.
' (개념 : 함수, 반복문, 리턴)
' 소수 구하는 함수 샘플
' def is_prime_num(n):
' for i in range(2, n):
' if n % i == 0:
' return False # i로 나누어 떨어지면 소수가 아니므로 False 리턴
' return True # False가 리턴되지 않고 for문을 빠져나왔다면 소수이므로 True 리턴
def is_prime_num(num):
if num == 1 : ''' 1은 소수가 아님.
i = 2
while i < num : # 2부터 num까지 증가 ( 주의. i <= num 이 아님. )
if num % i == 0 : #
return False # i로 나눌 수 있으면 소수가 아님
i += 1
return True # 더이상 나눌 수 없으면 소수
print("입력 받은 수는 소수입니다. : {}" .format(is_prime_num(1)))