Trong bài viết này, bạn sẽ học cách tìm thấy giai thừa của một số và hiển thị nó.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình Python sau:
- Python nếu ... tuyên bố khác
- Python cho vòng lặp
- Đệ quy Python
Nấp của một số là sản phẩm của tất cả các số nguyên từ 1 đến số đó.
Ví dụ, giai thừa của 6 là
The factorial of 7 is 50400. Nấp không được định nghĩa cho các số âm và giai thừa của số 0 là một,
The factorial of 7 is 50401.
Đơn vị của một số sử dụng vòng lặp
# Python program to find the factorial of a number provided by the user.
# change the value for a different result
num = 7
# To take input from the user
#num = int[input["Enter a number: "]]
factorial = 1
# check if the number is negative, positive or zero
if num < 0:
print["Sorry, factorial does not exist for negative numbers"]
elif num == 0:
print["The factorial of 0 is 1"]
else:
for i in range[1,num + 1]:
factorial = factorial*i
print["The factorial of",num,"is",factorial]
Đầu ra
The factorial of 7 is 5040
Lưu ý: Để kiểm tra chương trình cho một số khác, thay đổi giá trị của The factorial of 7 is 5040
2. To test the program for a different number, change the value of
The factorial of 7 is 50402.
Ở đây, số lượng mà giai thừa sẽ được tìm thấy được lưu trữ trong
The factorial of 7 is 50402 và chúng tôi kiểm tra xem số đó là âm, 0 hoặc dương bằng câu lệnh
The factorial of 7 is 50404. Nếu số là dương, chúng tôi sử dụng chức năng
The factorial of 7 is 50405 và
The factorial of 7 is 50406 để tính toán giai thừa.
Lặp đi lặp lại | Factorial*i [giá trị trả về] |
i = 1 | 1 * 1 = 1 |
i = 2 | 1 * 2 = 2 |
i = 3 | 2 * 3 = 6 |
i = 4 | 6 * 4 = 24 |
i = 5 | 24 * 5 = 120 |
i = 6 | 120 * 6 = 720 |
i = 7 | 720 * 7 = 5040 |
Đơn vị của một số sử dụng đệ quy
# Python program to find the factorial of a number provided by the user
# using recursion
def factorial[x]:
"""This is a recursive function
to find the factorial of an integer"""
if x == 1:
return 1
else:
# recursive call to the function
return [x * factorial[x-1]]
# change the value for a different result
num = 7
# to take input from the user
# num = int[input["Enter a number: "]]
# call the factorial function
result = factorial[num]
print["The factorial of", num, "is", result]
Trong ví dụ trên,
The factorial of 7 is 50407 là một hàm đệ quy tự gọi. Ở đây, chức năng sẽ tự gọi mình bằng cách giảm giá trị của x.
Để tìm hiểu về hoạt động của đệ quy, hãy truy cập đệ quy Python.
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Đọc
Bàn luận
Không nhiều người biết, nhưng Python cung cấp một chức năng trực tiếp có thể tính toán giai thừa của một số mà không viết toàn bộ mã để tính toán.
Phương pháp ngây thơ để tính toán giai thừa
The factorial of 7 is 50408
The factorial of 7 is 50409
# Python program to find the factorial of a number provided by the user
# using recursion
def factorial[x]:
"""This is a recursive function
to find the factorial of an integer"""
if x == 1:
return 1
else:
# recursive call to the function
return [x * factorial[x-1]]
# change the value for a different result
num = 7
# to take input from the user
# num = int[input["Enter a number: "]]
# call the factorial function
result = factorial[num]
print["The factorial of", num, "is", result]
0# Python program to find the factorial of a number provided by the user
# using recursion
def factorial[x]:
"""This is a recursive function
to find the factorial of an integer"""
if x == 1:
return 1
else:
# recursive call to the function
return [x * factorial[x-1]]
# change the value for a different result
num = 7
# to take input from the user
# num = int[input["Enter a number: "]]
# call the factorial function
result = factorial[num]
print["The factorial of", num, "is", result]
1The factorial of 7 is 50409
# Python program to find the factorial of a number provided by the user
# using recursion
def factorial[x]:
"""This is a recursive function
to find the factorial of an integer"""
if x == 1:
return 1
else:
# recursive call to the function
return [x * factorial[x-1]]
# change the value for a different result
num = 7
# to take input from the user
# num = int[input["Enter a number: "]]
# call the factorial function
result = factorial[num]
print["The factorial of", num, "is", result]
3Is
The factorial of 23 is : 258520167388849766400004
# Python program to find the factorial of a number provided by the user
# using recursion
def factorial[x]:
"""This is a recursive function
to find the factorial of an integer"""
if x == 1:
return 1
else:
# recursive call to the function
return [x * factorial[x-1]]
# change the value for a different result
num = 7
# to take input from the user
# num = int[input["Enter a number: "]]
# call the factorial function
result = factorial[num]
print["The factorial of", num, "is", result]
1The factorial of 7 is 50409
# Python program to find the factorial of a number provided by the user
# using recursion
def factorial[x]:
"""This is a recursive function
to find the factorial of an integer"""
if x == 1:
return 1
else:
# recursive call to the function
return [x * factorial[x-1]]
# change the value for a different result
num = 7
# to take input from the user
# num = int[input["Enter a number: "]]
# call the factorial function
result = factorial[num]
print["The factorial of", num, "is", result]
1The factorial of 23 is : 258520167388849766400008
The factorial of 23 is : 258520167388849766400009
Đầu ra:
The factorial of 23 is : 25852016738884976640000
Lỗi runtime :
Bài viết này được đóng góp bởi Manjeet Singh. Nếu bạn thích GeekSforGeeks và muốn đóng góp, bạn cũng có thể viết một bài viết bằng cách sử dụng PROPTENT.GeekSforGeeks.org hoặc gửi bài viết của bạn đến. Xem bài viết của bạn xuất hiện trên trang chính của GeekSforGeek và giúp các chuyên viên máy tính khác.math” module of python. Because it has C type internal implementation, it is fast.
math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.8
math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.9
Vui lòng viết nhận xét nếu bạn tìm thấy bất cứ điều gì không chính xác, hoặc bạn muốn chia sẻ thêm thông tin về chủ đề được thảo luận ở trên.
Làm thế nào để bạn mã hóa N Factorial?
Đầu ra:
The factorial of 23 is : 25852016738884976640000
Lỗi runtime :
- Bài viết này được đóng góp bởi Manjeet Singh. Nếu bạn thích GeekSforGeeks và muốn đóng góp, bạn cũng có thể viết một bài viết bằng cách sử dụng PROPTENT.GeekSforGeeks.org hoặc gửi bài viết của bạn đến. Xem bài viết của bạn xuất hiện trên trang chính của GeekSforGeek và giúp các chuyên viên máy tính khác.
math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
8math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
9Vui lòng viết nhận xét nếu bạn tìm thấy bất cứ điều gì không chính xác, hoặc bạn muốn chia sẻ thêm thông tin về chủ đề được thảo luận ở trên.
Làm thế nào để bạn mã hóa N Factorial?
Đầu ra:
The factorial of -5 is :
Lỗi runtime :
Traceback [most recent call last]: File "/home/f29a45b132fac802d76b5817dfaeb137.py", line 9, in print [math.factorial[-5]] ValueError: factorial[] not defined for negative values
- Bài viết này được đóng góp bởi Manjeet Singh. Nếu bạn thích GeekSforGeeks và muốn đóng góp, bạn cũng có thể viết một bài viết bằng cách sử dụng PROPTENT.GeekSforGeeks.org hoặc gửi bài viết của bạn đến. Xem bài viết của bạn xuất hiện trên trang chính của GeekSforGeek và giúp các chuyên viên máy tính khác.
math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
8math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
9math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
0
8# Python program to find the factorial of a number provided by the user # using recursion def factorial[x]: """This is a recursive function to find the factorial of an integer""" if x == 1: return 1 else: # recursive call to the function return [x * factorial[x-1]] # change the value for a different result num = 7 # to take input from the user # num = int[input["Enter a number: "]] # call the factorial function result = factorial[num] print["The factorial of", num, "is", result]
Traceback [most recent call last]: File "/home/f29a45b132fac802d76b5817dfaeb137.py", line 9, in print [math.factorial[-5]] ValueError: factorial[] not defined for negative values
77____43The factorial of 7 is 5040
9math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
5math.factorial[x] Parameters : x : The number whose factorial has to be computed. Return value : Returns the factorial of desired number. Exceptions : Raises Value error if number is negative or non-integral.
0The factorial of 23 is : 25852016738884976640000
7The factorial of 5.6 is :
3The factorial of 23 is : 25852016738884976640000
9Đầu ra:
The factorial of 5.6 is :
Lỗi runtime :
Traceback [most recent call last]: File "/home/3987966b8ca9cbde2904ad47dfdec124.py", line 9, in print [math.factorial[5.6]] ValueError: factorial[] only accepts integral values
Bài viết này được đóng góp bởi Manjeet Singh. Nếu bạn thích GeekSforGeeks và muốn đóng góp, bạn cũng có thể viết một bài viết bằng cách sử dụng PROPTENT.GeekSforGeeks.org hoặc gửi bài viết của bạn đến. Xem bài viết của bạn xuất hiện trên trang chính của GeekSforGeek và giúp các chuyên viên máy tính khác.Manjeet Singh. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to . See your article appearing on the GeeksforGeeks main page and help other Geeks.
Vui lòng viết nhận xét nếu bạn tìm thấy bất cứ điều gì không chính xác, hoặc bạn muốn chia sẻ thêm thông tin về chủ đề được thảo luận ở trên.