Exercices de programmation pour classes préparatoires
Écrire une fonction bien_parenthesee : string -> bool qui renvoie true si la chaîne est un mot bien parenthésé, false sinon.
La chaîne est composée uniquement des six caractères (, ), [, ], {, }. Un mot est bien parenthésé si :
- chaque ouvrante possède une fermante correspondante du même type,
- les paires sont correctement imbriquées (pas de croisement comme ([)]).
La chaîne vide est considérée comme bien parenthésée.
On utilisera le module Stack de la bibliothèque standard :
- Stack.create () : nouvelle pile vide,
- Stack.push x s : empile,
- Stack.pop s : dépile et renvoie (lève Stack.Empty si vide),
- Stack.is_empty s : teste la vacuité.
| Appel | Résultat attendu |
|---|---|
| bien_parenthesee "" | True |
| bien_parenthesee "([]{})" | True |
Connectez-vous pour soumettre du code.