pyhton; n에 가까운 팩토리얼 구하기

    n = int(input("숫자를 입력하세요:"))
    
    def nearest_factorial1(n):
        i = 0
        f = 1
            while True:
                f *= i+1
                if (f <= n):
                i += 1
            else:
                break
        return i
       
    def nearest_factorial2(n):
        i = 1
        while True:
            if math.factorial(i) > n: # i!이 n보다 크면
                return i-1 # i-1을 반환하고 종료
            else:
                i += 1 # i를 1 증가시키고 반복
    
    
    print(f"{n}보다 작거나 같은 팩토리얼은 {nearest_factorial1(n)}! 입니다.")
    print(f"{n}보다 작거나 같은 팩토리얼은 {nearest_factorial2(n)}! 입니다.")

     

    'Algorithm' 카테고리의 다른 글

    python; 백준 2941번 풀이/해설  (1) 2022.04.20

    댓글