2917 - Catalan: Difference between revisions
Tita Marian (talk | contribs) Pagină nouă: == Cerinţa == Numerele lui Catalan formează un șir cunoscut în combinatorică. Termenul general al acestui șir este: Cn=Cn2n–Cn+12n=1n+1⋅Cn2n=∏k=2nn+kk,pentru n≥0��=�2��–�2��+1=1�+1⋅�2��=∏�=2��+��,pentru �≥0 Primele 1010 numere Catalan sunt: 1,1,2,5,14,42,132,429,1430,4862 == Date de intrare == Programul citește de la tastatură numărul '''n'''. Programul va afișa pe ecran al '''n'''-lea număr Catalan. În cazul în... |
Tita Marian (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
== Date de intrare == | == Date de intrare == | ||
Programul citește de la tastatură numărul '''n'''. | Programul citește de la tastatură numărul '''n'''. |
Revision as of 19:10, 15 November 2023
Date de intrare
Programul citește de la tastatură numărul n. Programul va afișa pe ecran al n-lea număr Catalan. În cazul în care datele introduse de la tastatură nu îndeplinesc cerințele enunțate, pe ecran se va afișa mesajul "Datele de intrare nu corespund restricțiilor impuse. ".
Restricţii şi precizări
- 0 ⩽ n ⩽ 1000
Exemplu 1
- Intrare
5
- Ieșire
42
Exemplu 2
- Intrare
-2
- Ieșire
Datele de intrare nu corespund restricțiilor impuse.
Rezolvare
<syntaxhighlight lang="python" line> import math
def calculeaza_numar_catalan(n):
return math.factorial(2 * n) // (math.factorial(n + 1) * math.factorial(n))
if __name__ == "__main__":
try: n = int(input("Introduceți numărul n: ")) if 0 <= n <= 1000: rezultat = calculeaza_numar_catalan(n) print(f"Al {n}-lea număr Catalan este: {rezultat}") else: print("Datele de intrare nu corespund restrictiilor impuse.") except ValueError: print("Datele de intrare nu corespund restrictiilor impuse.")
</syntaxhighlight>