Generer toutes les possibilites

Résolu
LolixDudu Messages postés 45 Statut Membre -  
yg_be Messages postés 24281 Statut Contributeur -
Bonjour,
J'ai dans mon code un array de string contenant un certain nombre de caractère :
string[] char = new string [] {*rien*,A,B,C...a,b,c...,7,8,9};
Je souhaiterais "calculer" toute les possibilitées de combinaison de ces caractères. La taille des combinaisons sera comprise entre un max et un min. Actuellement j'utilise plusieurs boucle for mais c'est vraiment pas optimisé. J'aimerais connaitre une technique permettant de générer toute les combinaisons tout en pouvant modifier facilement leur taille.

Merci de vos réponses

1 réponse

yg_be Messages postés 24281 Statut Contributeur Ambassadeur 1 584
 
bonjour, peux-tu nous montrer ton code?
1
LolixDudu Messages postés 45 Statut Membre
 
Je l'ai refait vite fait sur mon tel parce que j'ai pas accès a mon ordi :

public class Program
 	{
 		static string[]chars = new string[]{
 			"a","b","c","d","1","2","3","","A"
 		};
 		
 		static List<string> passwords = new List<string>();
 		public static void Main(string[] args)
 		{
 			for(int i=0;i < chars.Length; i++){
 				for(int j=0;j < chars.Length; j++){
 					for(int k=0;k < chars.Length; k++){
 						for(int l=0;l < chars.Length; l++){
 							string password = chars[i]+chars[j]+chars[k]+chars[l];
 							passwords.Add(password + ";");
 						}
 					}
 				}
 			}
 		}
	}
0
LolixDudu Messages postés 45 Statut Membre > LolixDudu Messages postés 45 Statut Membre
 
Voilà c'est ça , faut juste imaginer que j'ai plus de caractères.
Je voudrais une façon plus faciles pour choisir la taille des passwords générer (pas être obligé de rajouter une boucle for)
0
yg_be Messages postés 24281 Statut Contributeur 1 584 > LolixDudu Messages postés 45 Statut Membre
 
as-tu envisagé de faire cela par récursivité?
0
LolixDudu Messages postés 45 Statut Membre
 
C'est quoi ? Je ne connais pas
0
yg_be Messages postés 24281 Statut Contributeur 1 584 > LolixDudu Messages postés 45 Statut Membre
 
dans quel contexte fais-tu cet exercice?
pour commencer: https://fr.wikipedia.org/wiki/R%C3%A9cursivit%C3%A9
dans ton cas, tu peux imaginer que tu fais une seule boucle for, dans laquelle tu appelles une fonction qui fera le reste du travail.
0