2917 - Catalan: Difference between revisions
Tita Marian (talk | contribs) No edit summary |
Tita Marian (talk | contribs) No edit summary |
||
Line 3: | Line 3: | ||
==Date de ieșire== | ==Date de ieșire== | ||
Programul va afișa pe ecran al '''n'''-lea număr Catalan. | 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 " | Î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." iar daca se indeplinesc se afiseaza "Datele de intrare corespund restricțiilor impuse." | ||
== Restricţii şi precizări == | == Restricţii şi precizări == | ||
* 0 ⩽ '''n''' ⩽ 1000 | * 0 ⩽ '''n''' ⩽ 1000 | ||
== | == Exemplul 1 == | ||
; Intrare | ; Intrare | ||
5 | 5 | ||
; Ieșire | ; Ieșire | ||
42 | Datele de intrare corespund restricțiilor impuse | ||
42 | |||
<br> | <br> | ||
== | == Exemplul 2 == | ||
; Intrare | ; Intrare | ||
-2 | -2 | ||
; Ieșire | ; Ieșire | ||
Datele de intrare nu corespund restricțiilor impuse. | Datele de intrare nu corespund restricțiilor impuse. | ||
<br> | <br> | ||
Line 28: | Line 29: | ||
if __name__ == "__main__": | if __name__ == "__main__": | ||
try: | try: | ||
n = int(input( | n = int(input()) | ||
if 0 <= n <= 1000: | if 0 <= n <= 1000: | ||
rezultat = calculeaza_numar_catalan(n) | rezultat = calculeaza_numar_catalan(n) | ||
print( | print("Datele de intrare corespund restrictiilor impuse.") | ||
print(rezultat) | |||
else: | else: | ||
print("Datele de intrare nu corespund restrictiilor impuse.") | print("Datele de intrare nu corespund restrictiilor impuse.") | ||
except ValueError: | except ValueError: | ||
print("Datele de intrare nu corespund restrictiilor impuse.") | print("Datele de intrare nu corespund restrictiilor impuse.") | ||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 19:25, 4 January 2024
Date de intrare
Programul citește de la tastatură numărul n.
Date de ieșire
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." iar daca se indeplinesc se afiseaza "Datele de intrare corespund restricțiilor impuse."
Restricţii şi precizări
- 0 ⩽ n ⩽ 1000
Exemplul 1
- Intrare
5
- Ieșire
Datele de intrare corespund restricțiilor impuse 42
Exemplul 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()) if 0 <= n <= 1000: rezultat = calculeaza_numar_catalan(n) print("Datele de intrare corespund restrictiilor impuse.") print(rezultat) else: print("Datele de intrare nu corespund restrictiilor impuse.") except ValueError: print("Datele de intrare nu corespund restrictiilor impuse.")
</syntaxhighlight>