Problème sur un algorithme

Bonjour,
slt tt le monde ca fait un grand moment que cherche a touver un algorithme mais je arrive pas ,je sais po pourkoi ,a premier vue il doit pas etre tres dur mais moi je bogue completement ,alors c vous pourraier m'aider ou me donner juste une aide commet faire,
voila le probleme :
suppose que tu as n urnes (sac..) identique et n balles differentes et tu veut avoir tt les cas possible de distribution de ces balle sur ses urnes , exemple
c tu as 2 urnes alors tu as 2 balles ----> 2 cas :
1 cas : urnes 1 contient la balle 1 et l 'urne 2 contient la balle 2 (ou contrire )
2 cas :urne 1 contient les deux balle (c pareil que urne 2 contient les 2 balle puisque identique )

pour 3 urnes et 3 balles on a 5 cas
pour 4 on a 15 cas
pour 5 on a 40 cas

merci d'avance pour votre aide
Configuration: Windows XP
Firefox 1.5.0.9

6 réponses

  1. si je fait que des boucle for je pourrai pas eliminer les cas dont j ai pas besoin c ca .en plus imagine pour 10cas s va faire koi il y a 1974 cas je veut pas faire un programe pour chaque
    mai merci comme memme pour ton aide
    0
    1. slt tt le monde
      j espere ke vous avez au moins compris le probleme
      tout aide sera la bien venu
      merci
      0
      1. Salut
        Pas la peine de compliquer le programme avec des struct et tas d'autre choses
        il faut considerer seulement ce qu'on veut faire :: afficher tout les cas possibles :: donc il serait plus simple d'utiliser des boucles "pour " imbriques pour gerer l'affichage de ces meme compteurs !! disons quelque chose comme ca :

        pour i de 1 à (nombre urne) faire
        debut
        pour .......

        ecrire (" cas 1 • U1=(balle1), U2=(balle 2), U3=(belle 3), ")
        fin pour
        fin.....
        a toi de completer IIIIIII
        0
    2. slt
      je cherche a le codé en C

      pour la prtie calcul de nombre de cas j ai fait deja ca , merci The F comme meme pour ta reponse ,
      moi je cherche a affecter pour chaque cas les balle et suvgarder tt les cas ,pour pour pouvoir les afficher c-a-d si je veut verifier les belle de 1 er cas il doit m afficher que j ai la belle 1 dans l 'urnes 1 et la belle 2 dans l urne 2;

      pour 3 urnes et 3 balle c 5 cas •

      cas 1 • U1=(balle1), U2=(balle 2), U3=(belle 3),
      cas 2• U1=(1,2), U2=(3),
      cas 3• U1=(1,3), U2=(2),
      cas4• U1=(2,3), U2=(1),
      cas 5• U1=(1,2,3),

      pour ma part moi j ai consederé les cas comme des sequence alors j essyer de le faire sous forme de structure avec des place pour mettre les balles

      juste pour rappel llaffecation U1=(1,2) ,U2=( ) ,U3=(3) , et pariel que U1 =( ) , S2=(1,2) ,U3=(3)
      j espere ke c clair maintenant
      merci ,encore
      0
      1. bjr
        cette astuce consiste a utiliser le theoreme de berlouni
        c'est de la probabilite
        selon les cas que tu as tu vas reagir et par la suite ecrire ton programme
        n:le nombre des urne
        p: le nombre des balles
        et tu applique le theoreme
        je ponse que c'est facille par la suite
        voila mon email pour plus d'informations
        kamellloo@yahoo.fr
        0
        1. Bonjour
          tout d'abord t'a une question qui @`|[`\}=}#{[|#` "**
          Ensuite voila une piste :
          *le programme que vous desirez utilise la formule / nCp / alors divise ton algo en parties
          - calcul de factorielle
          - calcul de Cp = n!/(p!*(n-p)!)
          - affichage
          0
          1. Et c'est quoi la question ?!
            0