bonjour à vous tous et ous toutes s'il vous plait je voudrais bien ecrireun programme sous c ou c++ qui m'affichera toutes les combinaisons des trois nombre 1 2 et 3 par exemple :
123
132
213
231
312
321
et Merci bcp d'avance
bonjour à vous tous et ous toutes s'il vous plait je voudrais bien ecrireun programme sous c ou c++ qui m'affichera toutes les combinaisons des trois nombre 1 2 et 3 par exemple :
123
132
213
231
312
321
et Merci bcp d'avance
Ca s'appelle des permutations lexicographiques, et le nombre de permutation possible est la factorielle du nombre de caractères.
Si tu as 3 caractères, ça sera donc 3! = 6
pour 4, ça sera 4! = 24
Pour 5, ça sera 5! = 120
etc...
next_permutation ou prev_permutation te permetteront d'avoir la prochaine ou précédente permutation respectivement
C'est malheureusement plus compliqué que ça. Il existe plusieurs cas :
si on autorise d'utiliser plusieurs fois le même chiffre.
Dans ce cas c'est un arrangement avec répétition : n^k où n sont le nombres de chiffres disponibles et k la longueur du nombre à produire. Pour ton cas, n = 3, k = 3 => 3^3 = 27.
A part ça, qu'est-ce qui te pose problème dans ton code ?
Bonjour,
Si tu as un problème d'algorithme, saches que celui-ci est fréquemment posé dans le forum consacré à la chose. Donc une recherche dans celui-ci devrait te permettre d'avancer.
Si tu as un problème de code, peux-tu nous préciser lequel ?
Ressources proposées par 3DArchi - Les fonctions virtuelles en C++ - Cours et tutoriels C++ - FAQ C++ - Forum C++.
Partager