더북(TheBook)

icon_cakewalk 무작정 따라하기 19-2

 

소인수분해를 하는 프로그램

 

◉ 예제 소스 19A-prime.py

# 소인수분해 프로그램

x = int(input("?"))  # 소인수분해할 숫자를 입력받아 정수로 바꿉니다.

d = 2                # 가장 작은 소수인 2부터 나눕니다.

 

while d <= x:

if x % d == 0:   # x가 d로 나누어지면(나머지가 0이면)

print(d)     # d는 x의 약수이므로 출력합니다.

x = x / d    # x를 d로 나눠서 다시 x에 저장합니다.

else:

d = d + 1    # 나누어지지 않으면 1을 더해서 반복합니다.

 

TIP

약수란 어떤 수를 나누어 떨어지게 하는 0이 아닌 정수를 의미합니다. 예를 들어 1은 모든 수의 약수이죠.