IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Combinaisons possibles de caractères


Sujet :

C

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2016
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Combinaisons possibles de caractères
    Bonjour tous le monde
    Bon je veux modifier un code en c pour me laisser afficher tous le combinaison des caractéres possible par ex "A;B,C"
    comme ceci
    -----------------
    A
    B
    C
    AB
    AC
    BC
    ABC
    ---------------
    voici le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    #include <stdio.h>
    #include <string.h>
     
    void bf(char *chaine, int taille_chaine, char *buffer, int longueur, int ind)
    {
    	int i=0;
     
    	if(ind>=longueur)
    	{
    		printf("%s\n",buffer);
    		return;
    	}
     
    	for(i=0; i<taille_chaine; i++)
    	{
    		buffer[ind] = chaine[i];
    		bf(chaine,taille_chaine,buffer,longueur,ind+1);
    	}
    }
     
    int main()
    {
     
     
    char table[]="ABC";
    int i=1;
    	int taille_table = strlen(table);
    	char * buffer = (char*)calloc(taille_table+1,sizeof(char));
     
    	for(i; i<taille_table; i++)
    	{
    		bf(table,taille_table,buffer,i,0);
    	}
     
    	free(buffer);
     
     
     
     
    	system("pause");
    	return 0;
    }
    Merci d'avance

  2. #2
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 580
    Points : 7 712
    Points
    7 712
    Par défaut
    Bonjour,

    il faut remplacer for(i;i< taille_table;i++) par for ( i=1 ; i <= taille_table ; ++i ) sinon il manquera des cas.

    Il ne faut pas tracer les doublons, pour cela la boucle de recherche doit évoluer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    	for (i = 0; i<taille_chaine; i++)
    	{
    		buffer[ind] = chaine[i];
    		// si deja pris avant ne pas utiliser
    		int k;
    		for ( k = 0 ; k < ind ; ++k ) // dans les caracteres deja ecrits
    			if ( buffer[k] == chaine[i] ) // le prochain est deja la
    				break; // arret (et k indique lequel)
    		if ( k >= ind ) // k a atteint la fin => jamais vu
    			bf(chaine, taille_chaine, buffer, longueur, ind + 1);
    	}

Discussions similaires

  1. Combinaison de 2 caractères possible
    Par guillaume40 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 02/08/2008, 21h21
  2. Réponses: 16
    Dernier message: 20/10/2006, 16h31
  3. trouver les combinaisons possibles d'un tableau ?
    Par titoumimi dans le forum Algorithmes et structures de données
    Réponses: 12
    Dernier message: 20/09/2006, 20h29
  4. toutes les combinaisons possibles
    Par marocleverness dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 29/05/2006, 00h11
  5. Sortir d'un tableau les combinaisons possibles
    Par juelo dans le forum Algorithmes et structures de données
    Réponses: 33
    Dernier message: 26/03/2006, 17h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo