TP Fourmi : type énuméré

mardi 16 novembre 2021
par  Emmanuel Adam
popularité : 3%

La destination d’une fourmi utilise le type énuméré Direction décrit en partie ci-dessous.
On classe les directions dans l’ordre suivant : Nord, NordEst, Est, SudEst, Sud, SudOuest, Ouest, NordOuest.
Chaque direction contient son vecteur directeur. Ainsi, le Nord porte le vecteur (0, -1) signifiant que si la fourmi se trouve en (x,y) aller vers le Nord la mènera en (x, y-1).
Aller vers l’Est mène en (x+1, 0) ; aller au SudOuest mène en (x-1, y+1), etc.

On codera le vecteur soit sous forme d’un tableau, d’un record, ou plus simplement sous la forme de 2 entiers dx et dy.


Ecrire dans la classe énumérée Direction, la méthode static Direction getInverse(Direction dir) qui retourne la direction opposée à celle passée en argument (par exemple, retourne NORD_EST à partir de SUD_OUEST).
La méthode peut être réalisée en 3 lignes.


Ecrire dans la classe énumérée Direction, la méthode static Direction getDirectionFromVector (int a, int b) qui retourne la direction correspondant au vecteur (a,b). La méthode peut être réalisée en 4 lignes.


Ecrire dans la classe énumérée Direction, la méthode static Direction get3Dir (Direction dir) qui retourne un tableau de 3 directions entourant la direction passée en argument (par exemple, retourne NORD_OUEST, NORD, NORD_EST à partir de NORD).


Passer à la suite