حسین عظیمی
3 ماه پیش توسط حسین عظیمی مطرح شد
1 پاسخ

مشکل در اجرای کد پایتون

سلام کد چه مشکلی داره؟
لطفا کمک کنید 🙏
کد :

def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n - 1)

print(factorial(5))

خروجی :

Traceback (most recent call last):
  File "factorial.py", line 10, in <module>
    print(factorial(5))
  File "factorial.py", line 6, in factorial
    return n * factorial(n - 1)
  File "factorial.py", line 6, in factorial
    return n * factorial(n - 1)
RecursionError: maximum recursion depth exceeded

🙏


ثبت پرسش جدید
آرتین کریمی
تخصص : برنامه نویس وب فول استک و الکت...
@error.404 3 ماه پیش مطرح شد
0

سلام دوست عزیز

  1. در def باید نوع ورودی رو مشخص کنید
    برای مثال
    
    def factorial(n: int):
    if n == 0:
        return 1
    else:
        return n * factorial(n - 1)

print(factorial(5))

2. مشکل اینه که شما نمیتونید از عدد 0 استفاده کنید 1 باشه بهتره
نسخه اصلاح شده

def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n - 1)


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام