Générer une chaine correctement parenthésée
Résolu
Theo_0055
Messages postés
275
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
19 janvier 2023
-
Modifié le 5 oct. 2022 à 15:39
Whismeril Messages postés 18279 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 mars 2023 - 5 oct. 2022 à 18:23
Whismeril Messages postés 18279 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 17 mars 2023 - 5 oct. 2022 à 18:23
A voir également:
- Générer une chaine correctement parenthésée
- Clémence souhaite faire calculer automatiquement les prix de 30 produits dans trois devises. elle a déjà saisi une formule de calcul pour le tarif du premier produit dans la première devise. corrigez sa formule afin que recopiée vers le bas puis vers la droite, elle remplisse correctement tout le tableau. - Forum Excel
- Ma tv ne trouve aucune chaine - Guide
- Excel extraire chaine de caractère après un caractère ✓ - Forum Excel
- TV ne reçoit aucune chaîne ✓ - Forum TNT
- Code chaine xxl - Forum Vidéo/TV
25 réponses
Theo_0055
Messages postés
275
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
19 janvier 2023
1
Modifié le 4 oct. 2022 à 16:21
Modifié le 4 oct. 2022 à 16:21
@whismeril et @Dal j'ai fait ceci:
void empiler(PileCaractere *p, char x) {
p->tab[p->n] = x;
p->n = p->n + 1;
}
char depiler(PileCaractere *p) {
p->n = p->n - 1;
return p->tab[p->n];
}
char sommet(PileCaractere *p) {
return p->tab[p->n - 1];
}
char ouvrante_to_fermante(char ouvrante) {
if (strcmp(ouvrante,'(') == 0)
return ')';
else if (strcmp(ouvrante,'{') == 0)
return '}';
else if (strcmp(ouvrante,'[') == 0)
return ']'
}
void generer_texte_bien_parenthese() {
char chaine[26] = "abcdefghijklmnopqrstuvwxyz";
char ouvrant[3] = "({[";
PileCaractere p = PileVide(&p);
char random_ouvrant = ouvrant[rand() % 3];
empiler(&p, random_ouvrant);
while(!est_vide(&p)) {
enum type_de_caractere suivant = rand() % 3;
switch (suivant) {
case Ouvrante:
empiler(&p, random_ouvrant);
printf("%c", random_ouvrant);
break;
case Fermante:
char fermante = ouvrante_to_fermante(sommet(&p))
printf("%c", fermante);
break;
case Quelconque:
c = chaine[rand() % 26];
printf("%c", c);
break;
}
}
}
Whismeril
Messages postés
18279
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 mars 2023
888
4 oct. 2022 à 12:13
4 oct. 2022 à 12:13
L'as tu testé?
Je pense qu'il manque un truc au moment de fermer.
Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Theo_0055
Messages postés
275
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
19 janvier 2023
1
4 oct. 2022 à 12:15
4 oct. 2022 à 12:15
Non pas encore testé
au moment de fermer vous vouliez dire quoi?
[Dal]
Messages postés
6057
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
17 mars 2023
1 043
4 oct. 2022 à 13:11
4 oct. 2022 à 13:11
à quel moment utilises-tu la fonction depiler() dans ton code ?
Whismeril
Messages postés
18279
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 mars 2023
888
>
[Dal]
Messages postés
6057
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
17 mars 2023
4 oct. 2022 à 13:19
4 oct. 2022 à 13:19
;)
Theo_0055
Messages postés
275
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
19 janvier 2023
1
Modifié le 4 oct. 2022 à 16:22
Modifié le 4 oct. 2022 à 16:22
Ah ouais j'ai oublié d'écrire :
depiler(&p, sommet(&p));
mamiemando
Messages postés
32283
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
17 mars 2023
7 572
5 oct. 2022 à 15:41
5 oct. 2022 à 15:41
Bonjour Theo_0055 : Si tu as les réponses à toutes tes questions, peux-tu basculer ton sujet en résolu ? Sinon indique-nous les questions encore en suspens.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Theo_0055
Messages postés
275
Date d'inscription
mardi 21 juillet 2020
Statut
Membre
Dernière intervention
19 janvier 2023
1
5 oct. 2022 à 15:42
5 oct. 2022 à 15:42
Ah oui non c'est fini j'ai plus de questions
Merci a tous pour votre aide
Whismeril
Messages postés
18279
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 mars 2023
888
5 oct. 2022 à 18:23
5 oct. 2022 à 18:23
De rien