Nombre de combinaisons à l'aide Python 2.7

                                               BTS  Dénombrements 

      Thème:           Utilisation de Python 2.7 pour trouver un nombre de combinaisons.

                              Rappel:  Soit ∈ IN et  p  IN  tels que p ≤  n

                                            Une combinaison de p éléments parmi n ( éléments d'un ensemble ) est

                                            est une partie de p éléments de cet ensemble de  n éléments.

                                             On s'intéresse au dénombrement de ces combinaisons.

                                             Le triangle de Pascal contient ces nombres de combinaisons.

                  L'objectif est de pouvoir trouver n'importe quel terme de la table de Pascal.

1            
1 1          
1 2 1        
1 3 3 1      
1 4 6 4 1    
1 5 10 10 5 1  
1 6 15 20 15 6 1

              Par exemple:    10     =       6      +     4   

                En utilisant la récursivité on  a   :

                                                       10     =                  6                                +          4   

   En remontant                             10     =    (          +    3   )                   +        (   3   + 1  )

   En remontant    encore              10     =  (  ( 1 + 2  ) + ( 2 + 1  )  )           + ( ( 2  + 1 ) + 1 )

   En remontant    encore              10     =  (  ( 1 + ( 1 + 1) )+ ( ( 1 + 1 ) +1 )  ) + ( 1 + ( 1 + ( 1 + 1 ) ) )

      On peut proposer :

from random import*
def comb(p,n):
       if  p==0 or p==n:
            return 1     
       else:
             return  comb(p-1,n-1)+comb(p,n-1)
 ######## Programme principal###########        
n=input("Donner le nombre d'éléments disponibles : ")
p=input("Donner le nombre d'éléments prélevés parmi les éléments disponibles : ")
print "le nombre de combinaisons de ",p,"elements parmi",n,"est : ",comb(p,n)
       

        On obtient par exemple  en appuyant sur la touche F5

>>> 
Donner le nombre d'éléments disponibles : 5
Donner le nombre d'éléments prélevés parmi les éléments disponibles :
3
le nombre de combinaisons de  3 elements parmi 5 est :  
10
>>> 

     On peut, par exemple,  farie apparaitre successivement les entiers de la ligne de n = 4


>>> 
Donner le nombre d'éléments disponibles : 4
Donner le nombre d'éléments prélevés parmi les éléments disponibles :
4
le nombre de combinaisons de  4 elements parmi 4 est :
 1

>>> 
Donner le nombre d'éléments disponibles : 4
Donner le nombre d'éléments prélevés parmi les éléments disponibles :
3
le nombre de combinaisons de  3 elements parmi 4 est :  
4

>>> 
Donner le nombre d'éléments disponibles : 4
Donner le nombre d'éléments prélevés parmi les éléments disponibles :
2
le nombre de combinaisons de  2 elements parmi 4 est :
 6
>>> 

>>> 
Donner le nombre d'éléments disponibles : 4
Donner le nombre d'éléments prélevés parmi les éléments disponibles :
1
le nombre de combinaisons de  1 elements parmi 4 est :
 4

>>> 
Donner le nombre d'éléments disponibles : 4
Donner le nombre d'éléments prélevés parmi les éléments disponibles :
0
le nombre de combinaisons de  0 elements parmi 4 est :  
1
>>> 

------------------------------------------------------------------------------------------------------------------------