Що таке факторіал?
Факторіал — ціле невід’ємне число. Це добуток усіх натуральних чисел, менших або рівних цьому числу, яке ви просите факторіалу. Позначається знаком оклику (!).
приклад:
n! = n* (n-1) * (n-2) *........1 4! = 4x3x2x1 = 24
Значення факторіалу 4 дорівнює 24.
Примітка. Значення факторіалу 0 завжди дорівнює 1. (Порушення правил)
приклад -
num = int(input('Enter a number: ')) factorial = 1 if num <0: 0 print(' factorial does not exist for negative numbers') elif num="=" 0: print('the of is 1') else: i in range(1,num + 1): of',num,'is',factorial) < pre> <p> <strong>Output:</strong> </p> <pre> Enter a number: 10 The factorial of 10 is 3628800 </pre> <p> <strong>Explanation -</strong> </p> <p>In the above example, we have declared a <strong>num</strong> variable that takes an integer as an input from the user. We declared a variable factorial and assigned 1. Then, we checked if the user enters the number less than one, then it returns the factorial does not exist for a negative number. If it returns false, then we check num is equal to zero, it returns false the control transfers to the else statement and prints the factorial of a given number.</p> <h3>Using Recursion</h3> <p>Python recursion is a method which calls itself. Let's understand the following example.</p> <p> <strong>Example -</strong> </p> <pre> # Python 3 program to find # factorial of given number def fact(n): return 1 if (n==1 or n==0) else n * fact(n - 1); num = 5 print('Factorial of',num,'is',) fact(num)) </pre> <p> <strong>Output:</strong> </p> <pre> Factorial of 5 is 120 </pre> <p> <strong>Explanation -</strong> </p> <p>In the above code, we have used the recursion to find the factorial of a given number. We have defined the <strong>fact(num)</strong> function, which returns one if the entered value is 1 or 0 otherwise until we get the factorial of a given number.</p> <h3>Using built-in function</h3> <p>We will use the math module, which provides the built-in <strong>factorial()</strong> method. Let's understand the following example.</p> <p> <strong>Example -</strong> </p> <pre> # Python program to find # factorial of given number import math def fact(n): return(math.factorial(n)) num = int(input('Enter the number:')) f = fact(num) print('Factorial of', num, 'is', f) </pre> <p> <strong>Output:</strong> </p> <pre> Enter the number: 6 Factorial of 6 is 720 </pre> <p>We have imported the math module that has <strong>factorial()</strong> function. It takes an integer number to calculate the factorial. We don't need to use logic.</p> <hr></0:>
Пояснення -
У наведеному вище прикладі ми оголосили a на одному змінна, яка приймає ціле число як введення від користувача. Ми оголосили змінну факторіал і присвоїли 1. Потім ми перевірили, якщо користувач вводить число менше одиниці, тоді він повертає факторіал не існує для від’ємного числа. Якщо він повертає false, ми перевіряємо, що num дорівнює нулю, він повертає false, керування передається оператору else і друкує факторіал заданого числа.
Використання рекурсії
Рекурсія Python — це метод, який викликає сам себе. Давайте розберемося в наступному прикладі.
приклад -
# Python 3 program to find # factorial of given number def fact(n): return 1 if (n==1 or n==0) else n * fact(n - 1); num = 5 print('Factorial of',num,'is',) fact(num))
Вихід:
Factorial of 5 is 120
Пояснення -
У наведеному вище коді ми використали рекурсію, щоб знайти факториал даного числа. Ми визначили факт функція, яка повертає одиницю, якщо введене значення дорівнює 1 або 0 в іншому випадку, доки ми не отримаємо факториал заданого числа.
колекції на java
Використання вбудованої функції
Ми будемо використовувати математичний модуль, який надає вбудовані факториал() метод. Давайте розберемося в наступному прикладі.
приклад -
# Python program to find # factorial of given number import math def fact(n): return(math.factorial(n)) num = int(input('Enter the number:')) f = fact(num) print('Factorial of', num, 'is', f)
Вихід:
Enter the number: 6 Factorial of 6 is 720
Ми імпортували математичний модуль, який має факториал() функція. Щоб обчислити факториал, потрібно ціле число. Нам не потрібно використовувати логіку.
0:>