Bonjour,
J'ai un problème d'algorithmique par rapport au parcours de dossiers et fichiers mais plus particulièrement pour coder un nombre variable de boucles "pour".
Mon Problème :
J'ai à ma disposition n dossiers contenant chacun k(n) fichiers. (Chaque dossier ne contient pas forcément le même nombre de fichiers)
Je voudrais à partir de ces fichiers créer toutes les combinaisons possibles de fichiers en prenant un fichier dans chaque dossier.
Cependant la fonction que je chercher à coder devra pouvoir prendre le nombre de dossiers en paramètre. Mon problème se trouve donc à cet endroit la. En effet, avec un nombre de dossiers fixe j'avais pensé à la solution suivante :
Pour 3 dossiers A,B,C contenant respectivement Nb_fichiers_A, Nb_fichiers_B et Nb_fichiers_C fichiers :
Code :
- Pour a de 1 à Nb_fichiers_A
- Pour b de 1 à Nb_fichiers_B
- Pour c de 1 à Nb_fichiers_C
- ....
- Fait
- Fait
- Fait
|
En partant des dossiers :
A : FichierA_1 FichierA_2 FichierA_3 (3 fichiers)
B : FichierB_1 FichierB_2 (2 fichiers)
C : FichierC_2 FichierC_3 (2 fichiers)
Je voudrais donc obtenir les (3*2*2=12) combinaisons :
A1-B1-C1 A1-B1-C2
A1-B2-C1 A1-B2-C2
A2-B1-C1 A2-B1-C2
A2-B2-C1 A2-B2-C2
A3-B1-C1 A3-B1-C2
A3-B2-C1 A3-B2-C2
afin de réutiliser ces fichiers pour une utilisation ultérieure.
Comment faire pour avoir un nombre de dossiers variable sans recourir à une solution "moche" consistant à poser un nombre max de dossiers et faire des tests ...
Si cela peut vous être utile, j'utilise le language R pour programmer mais une solution algorithmique me permettrait d'avancer.
En espérant avoir été assez clair, Merci par avance de votre aide!
Bonne journée