3330 - CalculCombinari: Difference between revisions
Rus Marius (talk | contribs) Pagină nouă: ==Cerința== Această problemă ar putea avea oricare dintre următoarele cerințe: într-o clasă sunt n elevi. În câte moduri putem face o echipă din k elevi? în parcul auto al unei firme de taxi sunt n mașini. Într-o zi vin la lucru k șoferi. În câte moduri pot fi alese cele k mașini folosite? la o masă sunt n locuri. La masă vor sta k persoane. În câte moduri putem alege scaunele folosite? avem n bomboane diferite. În câte moduri putem alege k bomboane... |
|||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==Cerința== | ==Cerința== | ||
Această problemă ar putea avea oricare dintre următoarele cerințe: | Această problemă ar putea avea oricare dintre următoarele cerințe: | ||
într-o clasă sunt n elevi. În câte moduri putem face o echipă din k elevi? | • într-o clasă sunt n elevi. În câte moduri putem face o echipă din k elevi? | ||
în parcul auto al unei firme de taxi sunt n mașini. Într-o zi vin la lucru k șoferi. În câte moduri pot fi alese cele k mașini folosite? | • în parcul auto al unei firme de taxi sunt n mașini. Într-o zi vin la lucru k șoferi. În câte moduri pot fi alese cele k mașini folosite? | ||
•la o masă sunt n locuri. La masă vor sta k persoane. În câte moduri putem alege scaunele folosite? | |||
•avem n bomboane diferite. În câte moduri putem alege k bomboane? | |||
•o mulțime are n elemente. Câte submulțimi cu k elemente are? | |||
etc. | etc. | ||
Line 16: | Line 16: | ||
Din lipsă de imaginație, cerința este: | Din lipsă de imaginație, cerința este: | ||
Se dau numerele naturale n și k. Calculați | Se dau numerele naturale n și k. Calculați combinari de n luate cate k. | ||
. | |||
==Date de intrare== | ==Date de intrare== | ||
Line 24: | Line 23: | ||
Programul va afișa pe ecran numărul C, reprezentând | Programul va afișa pe ecran numărul C, reprezentând | ||
==Restricții și precizări== | ==Restricții și precizări== | ||
0 ≤ k ≤ n ≤ 500 | '''0 ≤ k ≤ n ≤ 500''' | ||
==Exemplu== | ==Exemplu== | ||
;intrare | ;intrare | ||
4 2 | |||
;ieșire | ;ieșire | ||
6 | |||
==Rezolvare== | ==Rezolvare== | ||
<syntaxhighlight lang="python" line=""> | <syntaxhighlight lang="python" line=""> | ||
def coeficient_binomial(n, k): | def coeficient_binomial(n, k): |
Latest revision as of 13:32, 16 November 2023
Cerința[edit | edit source]
Această problemă ar putea avea oricare dintre următoarele cerințe:
• într-o clasă sunt n elevi. În câte moduri putem face o echipă din k elevi?
• în parcul auto al unei firme de taxi sunt n mașini. Într-o zi vin la lucru k șoferi. În câte moduri pot fi alese cele k mașini folosite?
•la o masă sunt n locuri. La masă vor sta k persoane. În câte moduri putem alege scaunele folosite?
•avem n bomboane diferite. În câte moduri putem alege k bomboane?
•o mulțime are n elemente. Câte submulțimi cu k elemente are?
etc.
Din lipsă de imaginație, cerința este:
Se dau numerele naturale n și k. Calculați combinari de n luate cate k.
Date de intrare[edit | edit source]
Programul citește de la tastatură numerele naturale n k.
Date de ieșire[edit | edit source]
Programul va afișa pe ecran numărul C, reprezentând
Restricții și precizări[edit | edit source]
0 ≤ k ≤ n ≤ 500
Exemplu[edit | edit source]
- intrare
4 2
- ieșire
6
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line=""> def coeficient_binomial(n, k):
if k == 0 or k == n: return 1 else: return coeficient_binomial(n - 1, k - 1) + coeficient_binomial(n - 1, k)
n, k = map(int, input("Introduceți valorile lui n și k (separate prin spațiu): ").split()) rezultat = coeficient_binomial(n, k) print("Coeficientul binomial C(", n, ",", k, ") este:", rezultat) </syntaxhighlight>