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[edit | edit source]
Programul citește de la tastatură numărul n.
Date de ieșire[edit | edit source]
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[edit | edit source]
- 0 ⩽ n ⩽ 1000
Exemplul 1[edit | edit source]
- Intrare
5
- Ieșire
Datele de intrare corespund restricțiilor impuse 42
Exemplul 2[edit | edit source]
- Intrare
-2
- Ieșire
Datele de intrare nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
<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>