0% ont trouvé ce document utile (0 vote)
3 vues4 pages

Projet Java : Piles et Tours de Hanoï

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)
3 vues4 pages

Projet Java : Piles et Tours de Hanoï

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

TP2

1. Créer un nouveau projet java tp2


2. Dans ce projet, créer 3 packages :
• liste_pile
• test
• hanoi
3. Dans le package liste_pile, code les classes Liste, Pile et PileEntiers (questions 1 et 2)
4. Dans le package test, coder une classe qui contient la méthode main() : tester vos
classes en créant et en affichant des listes, des piles … (en ajoutant et en supprimant
des éléments)
5. Dans le package test, ajouter une méthode test_aleatoire qui répond à la (question 3).
6. Dans le package hanoi, coder la classe Hanoi avec ses attributs (les tours, le nombre
d’anneaux) et sa méthode de résolution (question 4)
7. Coder le main final
La classe Liste
• Une liste est caractérisée par :
• Un tableau d’éléments (→ classe ArrayList)
• Une position courante (une référence sur un objet et /ou un indice ?)
• La classe Liste possède un constructeur qui :
• Créée le tableau
• Initialise la position courante à ?? (! Au départ, la liste est vide …)
• La classe liste possède les méthodes
premier(),dernier(),suivant(),ajouter() qui ajoute après l’élément
courant et supprimer().
Bien prévoir tous les cas (si la liste est vide, si la liste devient vide …)
Les classes Pile et PileEntiers
• Une liste est composé d’une liste
• Afin de garantir que le principe d’une pile est respecté, la liste est
privée (visibilité private) et une pile ne dispose que de deux
méthodes empiler() et depiler()
• Les autres parties du code (exercice pair/impair …) n’utiliseront que
des piles d’entiers et ne pourront qu’empiler et dépiler (accès au
sommet de la pile uniquement) ! (utiliser des piles temporaires si
nécessaires)
L’affichage
• Eviter les blablas
• Aérer avec des retours à la ligne.
• Afficher les piles horizontalement :
par exemple pour les tours de hanoi :
tour 1 : 0 1 2 3 4
tour 2 :
tour 3:
tour 1 : 0 1 2 3
tour 2 :
tour 3: 4
tour 1 : 0 1 2
tour 2 : 3
tour 3: 4

Vous aimerez peut-être aussi