en gros si ma chaine =[()()()] il maffiche True si nn comme [[]]]]]])))) il m'affiche false
ma solution est la voicij 'ai utilisé une pile,lorsque elle est bien parenthésé il m affiche True et quand j ai des parenthèses ouvrantes plus que parenthèse fermente il affiche False
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 import sys def par(chaine): vec=[] for i in chaine: if i=='(' or i=='[' : vec.append(i) elif i==')' and vec[-1]=='(': vec.pop() elif i==']' and vec[-1]=='[': vec.pop() return len(vec)==0
le problème le programma bug quand j ai mis une chaine de caractère comme ceci [[]]))))))
cet a dire des patenthese ouvrantes ou des crochés ferments plus que des parenthèse ouvrante ou croché ferments aussi
merci pour votre aide
Partager