0% ont trouvé ce document utile (0 vote)
8 vues1 page

TP Informatique : Notation Polonaise et Piles

Le document présente un TP d'informatique pour la filière MPSI/PCSI, axé sur la notation polonaise inversée (NPI) et les structures de données comme les piles. Il contient plusieurs exercices, incluant la création de fonctions pour évaluer des expressions postfixées, vérifier des palindromes, inverser une pile, et convertir des nombres en binaire. Chaque exercice est accompagné d'instructions claires et d'exemples de code.

Transféré par

ayoubhammouch81
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
8 vues1 page

TP Informatique : Notation Polonaise et Piles

Le document présente un TP d'informatique pour la filière MPSI/PCSI, axé sur la notation polonaise inversée (NPI) et les structures de données comme les piles. Il contient plusieurs exercices, incluant la création de fonctions pour évaluer des expressions postfixées, vérifier des palindromes, inverser une pile, et convertir des nombres en binaire. Chaque exercice est accompagné d'instructions claires et d'exemples de code.

Transféré par

ayoubhammouch81
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

CPGE LBS Guelmim Année scolaire : 2024/2025

Filière : MPSI/PCSI Matière : Informatique

TP

Exercice 1
La notation polonaise inversée (NPI) permet de définir des expressions mathématiques sans
parenthè[Link] expression avec parenthèses, par exemple "2*(5+6)" s’écrit en NPI : "2 5 6 + *".
1. Écrire une fonction Eval(op,n1,n2) qui prend trois paramètres, un opérateur op représenté
par un caractère, et deux opérandes n1 et n2, qui sont des nombres entiers. La liste des
opérateurs disponibles est la suivante : +, -, *, /.
Exemple : Eval("+",1,2) retourne 3.
2. Écrire une fonction Evalue(exp) qui prend en argument une expression postfixée représentée
sous forme de liste. Cette fonction retourne la valeur du calcul correspondant à cette expres-
sion.
Pour calculer une expression arithmétique codée en postfixée, il suffit :
— d’empiler les entiers successifs que l’on rencontre ;
— lorsque l’on détecte un opérateur, il faut
— dépiler les 2 derniers entiers ;
— leur appliquer l’opérateur ;
— empiler le résultat ;
— enfin, lorsque l’on rencontre un point, le résultat du calcul doit être dépilé puis affiché.

Exemple : Evalue([7,4,"+", "."]) retourne 11.

Exercice 2
1. Utiliser une pile pour écrire une fonction est_palindrome(mot) qui vérifie si un mot est un
palindrome (se lit de la même manière dans les deux sens).
2. Tester la fonction avec les mots suivants : "radar", "python", "kayak".

Exercice 3
1. Écrire une fonction inverser(p) qui prend en paramètre une pile p et retourne la pile inversée.
2. Écrire une fonction rotation(p,n) qui effectue une « rotation » des n éléments situés en haut
de la pile p.

Exercice 4
Utiliser une pile pour convertir un nombre entier en binaire.

Vous aimerez peut-être aussi