0534 - Factorial 1: Difference between revisions
Adina Timiș (talk | contribs) Pagină nouă: ==Cerința== Să se scrie un program care citește numărul natural n și determină valoarea lui n! = 1 * 2 * 3 * ... * n. ==Date de intrare== Programul citește de la tastatură numărul n. ==Date de ieșire== Programul afișează pe prima linie a ecranului valoarea lui n!. ==Restricții și precizări== *0 ≤ n ≤ 1000; *prin definiție, 0! = 1; ==Exemplul 1== ;Intrare :4 ;Ieșire :Datele de intrare corespund restricțiilor impuse. :24 ==Exemplul 2== ;Intrare :1001 ;Ie... |
Adina Timiș (talk | contribs) No edit summary |
||
Line 35: | Line 35: | ||
return result | return result | ||
if __name__ == "__main__": | |||
n = int(input("Introduceți n: ")) | n = int(input("Introduceți n: ")) | ||
if factorial(n) is not None: | if factorial(n) is not None: | ||
Line 41: | Line 41: | ||
print(factorial(n)) | print(factorial(n)) | ||
Revision as of 21:53, 23 April 2023
Cerința
Să se scrie un program care citește numărul natural n și determină valoarea lui n! = 1 * 2 * 3 * ... * n.
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
Programul afișează pe prima linie a ecranului valoarea lui n!.
Restricții și precizări
- 0 ≤ n ≤ 1000;
- prin definiție, 0! = 1;
Exemplul 1
- Intrare
- 4
- Ieșire
- Datele de intrare corespund restricțiilor impuse.
- 24
Exemplul 2
- Intrare
- 1001
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line="1">
- 0534 - Factorial 1
def factorial(n):
if n == 0: return 1 elif n < 0 or n > 1000 or not isinstance(n, int): print("Datele de intrare nu corespund restrictiilor impuse.") return None else: result = 1 for i in range(1, n+1): result *= i return result
if __name__ == "__main__":
n = int(input("Introduceți n: ")) if factorial(n) is not None: print("Datele de intrare corespund restricțiilor impuse.") print(factorial(n))
</syntaxhighlight>