Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Fonction factorielle

steph71

XLDnaute Occasionnel
Bonjour à tous

Existe t il dans EXCEL une fonction factorielle permettant de déterminer toutes les combinaisons possibles de 3 éléments avec 10 éléments ?

Merci d'avance
Bonne journée
 

Abel

XLDnaute Accro
Bonjour Steph71,

La fonction factorielle dans la feuille de calcul est '=FACT(nombre)'.

Pour le dénombrement de 'p' parmis 'n' éléments, ce serait :

= FACT(n)/FACT(n-p)

On peux bien sur remplacer n et p par des adresses de cellule.


En espérant que cela te dépanne.

Abel.
 

Sylvie

XLDnaute Accro
Bonjour,

je pense que tu as voulu faire état d'une liste des combinaisons possibles de 3 éléments comportant chacun 15 (et non 10) éléments.
La formule suivante doit alors te convenir : PERMUTATION(15;3)
 

Abel

XLDnaute Accro
Re,

Heu ... je crois qu'il y a une petite erreur dans ma formule. Je crois que c'est plutôt :

Combinaison p parmis n (peux pas faire Cnp) = n! / (p!(n-p)!)

Dans le fil joint ci-dessus en adaptant, ça ferait :

Code:
Sub combin()
Dim a1, a2, a3, a4, a5, a6
Dim z
z = 1
For i = 1 To 10
    a1 = Range('a' & i).Value
    For j = 2 To 10
        If i >= j Then
            GoTo a
            Else
            a2 = Range('a' & j).Value
            End If
        For k = 3 To 10
            If j >= k Then
                GoTo b
                Else
                a3 = Range('a' & k).Value
                Range('b' & z).Value = a1 & a2 & a3
                z = z + 1
                End If
b:
        Next
a:
    Next
Next
End Sub

Et puis si ma formule est juste et que les piles de ma calculette sont en état, 3 parmis 10 cela fait 120 solutions, non ?


Abel.
 

Abel

XLDnaute Accro
Re,

Oups !

Pardon Sylvie, pas vu.

Je pense que tu as raison. Le nombre de permutations possibles donne 2730.

Les permutations et les combinaisons ne sont pas la même chose.

Les plus calés que moi en proba et dénombrement répondront mieux.
Sylvie ?

Abel.
 

Abel

XLDnaute Accro
Re,

Ben adapte le code.

3 parmis 10, ça fait 720 solutions.
3 parmis 15, ça fait 2730 solutions.

Code:
Sub combin()
Dim a1, a2, a3
Dim z
z = 1
For i = 1 To 10
    a1 = Range('a' & i).Value
    For j = 1 To 10
        If i = j Then
            GoTo a
            Else
            a2 = Range('a' & j).Value
            End If
        For k = 1 To 10
            If j = k Or i = k Then
                 GoTo b
                Else
                 a3 = Range('a' & k).Value
                 Range('b' & z).Value = a1 & a2 & a3
                z = z + 1
                End If
b:
        Next
a:
    Next
Next
End Sub


En espérant que cela te dépanne.


Abel.

Edition : au fait, ma première formule concernait bien les permutations et non les combinaisons.

ps : je vois qu'il y a des ';' qui se baladent dans le code. Enlève les.

Message édité par: Abel, à: 24/08/2005 17:26
 

Gael

XLDnaute Barbatruc
Bonsoir à tous,

Il existe une fonction COMBIN dans XL qui fais ce calcul sans problème.

Les permutations comportent la notion d'ordre qu'il n'y a pas dans les combinaisons. Il y a donc plus de permutations que de combinaisons pour un même nombre d'éléments.

Pour mon 500ème, j'ai fait un arbre binaire avec l'exemple du loto qui vous donnera quelques exemples de probabilités mais je n'ai pas utilisé la fonction combin.

Lien supprimé

Il y a également une procédure très simple à utiliser qui est sur le site Excelabo et permet d'afficher tous les résultats. Je l'ai essayée ça marche super bien avec des chiffres ou du texte:

avec la fonction COMBIN (x;y) on peut calculer le nombre de combinaisons possibles. Mais comment faire pour afficher ou calculer toutes les combinaisons et toutes les permutations ?

Un ensemble de procédures de Myrna Larson permet de faire aussi bien la liste des combinaisons que des permutations (malgré le nom de la procédure principale 'ListPermutations' qui pourrait laisser croire qu'elle laisse les combinaisons de côté).
Ci-dessous le code, avec mode d'emploi, à recopier dans un module standard.




@+

Gael

Message édité par: Gael, à: 01/09/2005 23:47
 

Discussions similaires

Réponses
13
Affichages
344
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…