Tester un grand nombre d' additions

weirstrass -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
J'ai 4 listes de nombres. Je voudrais tester toutes les additions possibles à 4 nombres, Chaque nombre étant pris dans une liste ( un nombre par liste) et afficher la liste des quadruplets de nombres dont le résultat est 55555.
Merci
Configuration: Windows Vista / Firefox 3.5.8

7 réponses

  1. latoopa Messages postés 278 Date d'inscription   Statut Membre Dernière intervention   32
     
    Salut,

    il doit y avoir moyen "d'algorithmiser" la chose mais comme ça c'est faisable :

    Tu créés une cascade de boucles "for" dans le style :

    for(int indice1 = 0 ; indice1 != nombreElementsListe1 ; indice1 ++){
            for(int indice2 = 0 ; indice2 != nombreElementsListe2 ; indice2 ++){
                    for(int indice3 = 0 ; indice3 != nombreElementsListe3 ; indice3 ++){
                          for(int indice4 = 0 ; indice4 != nombreElementsListe4 ; indice4 ++){
    
                               if( liste1[indice1]+liste2[indice2]+liste3[indice3]+liste4[indice4] == 55555 )
                               affichage(liste1[indice1]+liste2[indice2]+liste3[indice3]+liste4[indice4]); // a adapter 
    
                          }
                    }
             }
    }


    Bon... ce n'est ni "beau" ni rapide mais ca marche... pour des listes courtes...
    Voilà.

    Toopa
    0
    1. weirstrass
       
      Merci Toopa
      mais est-ce possible avec un tableur ? genre excel?
      0
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    Une macro sur excel : weirstrass.xls
    Pas beaucoup optimisée, si tes listes sont très longues et si c'est pour un usage régulier on pourra voir pour améliorer.
    eric

    PS: dans le code j'ai limité le nombre de solutions à 1000. Tu peux l'augmenter dans la limite du nombre de ligne-1 de ta feuille.
    0
    1. weirstrass
       
      merci beaucoup, c'est vraiment sympa !
      juste que je n'ai pas trop compris comment ça marche. J'ai changé certaines valeurs de tes listes, mais rien à changé au niveau des colonnes résultats.

      Pourrais-tu m'expliquer comment faire marcher ce programme ?

      Ma première liste contient 40 nombres, la deuxième 24, la troisième 21 et la dernière 40, ce qui donne 806400 additions à tester.

      merci encore !
      0
  3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Rien de bien compliqué :
    Tu colles tes listes en A2, B2, C2 et D2, la somme à atteindre en F2 et tu cliques sur le bouton.
    Et si tu veux plus de 1000 résultats tu changes dans le code la valeur de nbmaxsol = 1000
    eric
    0
    1. weirstrass
       
      en cliquant sur le bouton , il m'affiche un message d'erreur: erreur de script lors de l'execution du script vnd.sun.star.script
      0
  4. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    heuuuu, étrange... Rien de tout ça chez moi.
    A moins que ce ne soit le passage sur excel 2007 mais c'est la 1ère fois que je vois excel parler de script dans un message d'erreur (?)
    Dépose le fichier avec tes données sur cijoint.fr et colle ici le lien fourni
    eric
    0
    1. weirstrass
       
      en fait, c'est pas excel mais le classeur d'open office (j'ai dit excel pour aller plus vite, pensant que c'est la même chose
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Open office est compatible excel, mais pas pour les macros...
    Il va falloir que tu l'adaptes ou que tu trouves qcq'un qui connaisse open office.
    Si tu redémarres une discussion précise bien 'macro open office' dans le titre
    eric
    0
    1. weirstrass
       
      je t'ai déposé le fichier au cas ou tu pourrais faire qque chose

      http://www.cijoint.fr/cjlink.php?file=cj201003/cijAhnVxPw.ods
      merci.
      0
  7. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Pour 55555 ça te fait 184 solutions.
    weirstrass.xls
    0
    1. weirstrass
       
      Merci beaucoup c'est très sympa de m'avoir aidé
      0
  8. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    De rien :-)
    Bonne continuation
    0