Bonjour, j'ai écrit ce cette fonction pour générer un texte bine parenthésé mais j'ai que des parenthèses ouvrantes dans le résultat.
void genereTextBienParenthese(FILE * output){
int n = random() % TAILLE_MAX_TEXTE;
char c;
PileChar p;
int cond;
for (int i = 0; i < n; i++)
{
cond=1;
printf("i = %d\n",i);
c = genereChar();
if(c=='('){ empiler(&p,c);}
if(c==')'){
if(est_vide(&p)||(sommet(&p)!='(')){cond= 0;}
else{depiler(&p);}
}
if(c=='{'){empiler(&p,c);}
if(c=='}'){
if(est_vide(&p)||(sommet(&p)!='{')){cond=0;}
else{depiler(&p);}
}
if(c=='['){empiler(&p,c);}
if(c==']'){
if(est_vide(&p)||(sommet(&p)!='[')){cond=0;}
else{depiler(&p);}
}
if (cond){fprintf(output, "%c", c);}
}
}``
Aucun commentaire:
Enregistrer un commentaire