[Python] 파이썬, 소인수 분해하기

    소인수분해(Prime Factorization)란 다들 알다시피 1보다 큰 자연수인 소인수(소수인 인수)들만의 곱으로 표현하는 것을 말한다. 소인수는 일단 1이라는 값이 아닌 2부터 시작하는 것이 핵심이며, 2로 나누지 못할 경우 2에서 +1를 해주면서 나누어지는지 체크하면 된다.

     

    파이썬으로 소인수분해하기

     

    소인수분해 소스코드

    def factorization(x):
        d = 2
    
        while d <= x:
            if x % d == 0:
                print(d)
                x = x / d
            else:
                d = d + 1
    
    factorization(9)    # 소인수 분해를 할 값을 입력한다.
    
    # 결과
    3
    3

     

    위 코드는 일단 소인수 분해를 할 값으로 9를 선택하였는데 결과는 당연히 3 x 3이 된다. 

     

     

    반응형

    댓글

    Designed by JB FACTORY