python_약수소수구하기

ssancho·2024년 3월 29일

python

목록 보기
12/26

텍스트 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)))

profile
Ssancho

0개의 댓글