TP 4

Le but de ce TP est de manipuler intensivement des listes chaînées, en particulier dans le cas où elles servent à implémenter les piles.

On fabriquera une calculatrice à pile, telles les HP. Une première version fera des opérations sur les réels. L'état de la calculatrice est donc à chaque instant une pile de réels et les opérations s'appliquent aux éléments de cette pile.

Ensuite, la calculatrice sera améliorée pour que les éléments de la pile puissent être des listes (de réels ou de listes...) sur lesquelles on pourra faire des opérations.


Créer un répertoire tdsjava/tp4 pour y mettre tous les fichiers de la séance.

1. manipulation d'une pile de réels

1.1 opérations élémentaires sur une pile

Modifier ce fichier Pile.java en complétant les méthodes push, top, pop et toString. Faire une version récursive et une version itérative de toString.

Une solution (PileSol.java).

1.2 opérations compliquées sur une pile

Les éléments de la pile sont numérotés à partir de 0 (l'élément 0 étant le dernier à avoir été empilé ; le haut de la pile). Définir les méthodes suivantes :

Une solution (PileExt.java).


2. calculatrice de base

Compléter le fichier (Calculatrice.java) en rajoutant les méthodes suivantes (opérations sur les réels) :

Une solution (CalculatriceSol.java).


3. manipulation de réels ou de listes

Compléter CalculatriceListe.java où le type de données est modifié pour que les éléments de la pile puissent être aussi des listes (chaînées).

Rajouter les opérations :

Une solution (CalculatriceListeSol.java).