python2 소인수 구하는 알고리즘
#-*- coding:utf-8 -*- #소인수 : 어떤 정수를 구성하는 인수 중에서 그 수의 소수 #예) 12의 약수는 1,2,3,4,6 => 12의 약수 중 소수는 2,3, => 2x2x3 =12 => 2,2,3 #소인수 분해 : 소수를 이용하여 그 수를 만드는 곱의 형태로 표현하는 과정 #예) 12의 소운수 분해 결과 => 2x2x3 import sys N = input("숫자") if(N<=2): sys.exit(1) #입력받은 값이 2와 같거나 작으면 종 A=[] k=1 while(True): k=k+1#k=2로 만들어줌 2부터 항상 나누어줌 if(N%k ==0): # 12/k 나누어 떨어지면 리스트에 넣어줌 A.append(k) N = N/k# 실제로 나눔 몫을 넣음 if(N==1):#나눈후 몫이 1이 되면 반복문 빠져나와 break else: k=1 # k=1는 다시 1로 초기 for l in range(0,len(A)): print A[l]