
gmp_fact 함수는 0과 음수에 대한 정의가 없기 때문에, 이러한 입력값에 대해서는 함수가 동작하지 않습니다.
예를 들어, gmp_fact(-5)와 gmp_fact(0)는 모두 정의되지 않습니다.
하지만, 소수는 양의 정수만을 의미하므로, 0과 음수는 소수가 아닙니다.
따라서, gmp_fact 함수는 0과 음수를 입력할 경우, 정의되지 않은 상태로 남아 있습니다.
만약 0과 음수를 입력한 경우, 함수가 동작하지 않으므로, 예외 처리를 통해 이러한 경우를 처리하는 것이 좋습니다.
예를 들어, 다음과 같이 예외 처리를 할 수 있습니다.
#hostingforum.kr
python
import gmpy2
def factorial(n):
try:
return gmpy2.fac(n)
except ValueError:
return "0과 음수는 소수가 아닙니다."
print(factorial(-5)) # 0과 음수는 소수가 아닙니다.
print(factorial(0)) # 0과 음수는 소수가 아닙니다.
print(factorial(5)) # 120
2025-07-19 09:39