Vous êtes sur la page 1sur 2

Ecole Nationale d’Ingénieurs de Sousse ‫المدرسة الوطنية للمهندسين بسوسة‬

A .U : TD 1 Enseignant : Zarrouk Elyes


2013
/2014 Programmation orientée objet
Exercice1 :

1) Ecrire une classe Point comportant


 Deux attributs x et y de type double représentant les coordonnées d’un point
 Un constructeur recevant en arguments les deux valeurs des coordonnées du point à
construire
 Une méthode nommée affiche dont le rôle est d’afficher sur écran les coordonnées d’un
point sous la forme : p =(x, y)
 Une méthode nommée translate recevant en arguments deux valeurs doubles dx et dy et
dont le rôle est de translater un point de dx et de dy
2) Ecrire une méthode main () (à mettre dans une autre classe TestPoint) qui :
 Construit un point de coordonnées 3.5 et 7
 Affiche les coordonnées de ce point
 Translate ce point de 2 et 3
 Réaffiche les coordonnées du point

Exercice 2 :

1- Créer la classe Temps qui contient 3 attributs entiers privés pour la déclaration des heures,
des minutes et les secondes.

Définir les constructeurs suivants :

-Temps ( int heure) : construit un objet Temps à partir d’une heure donnée

-Temps (int heure, int minute) : construit un objet Temps à partir des valeurs heure et minute

-Temps (int heure, int minute, int seconde) : construit un objet Temps à partir des trois valeurs
: heure, minute et seconde

Définir une méthode affiche () qui affiche le temps sous la forme suivante : « Il est …
heures…minutes…secondes »

Qu’obtienne-t-on à l’exécution si on ajoute dans cette classe la méthode main suivante ?:

public static void main (String [] args)


{ Temps t = new Temps (10) ;
t.affiche() ;
t=new Temps(10, 34) ;
t.affiche() ;
t=new Temps( 10, 34, 45) ;
t.affiche() ;}

Définir une fonction main dans une autre classe (dans un nouveau fichier java) qui :
-Construit un Temps t1 de 12 heures et 15 secondes

Réalisé par Zarrouk ELyes 1


Ecole Nationale d’Ingénieurs de Sousse ‫المدرسة الوطنية للمهندسين بسوسة‬

-Affiche le Temps t1 sans utiliser la méthode affiche()

-Construit un temps t2 de 20 minutes et 53 secondes

-Affiche le Temps t2 sans utiliser la méthode affiche()

Exercice 3 :

On désire décrire l’état d’un robot simplicite: un tel robot occupe une certaine position (X, Y),
il a une orientation parmi {Nord, Est, Sud, Ouest}(Voir Figure). Il est initialisé avec une
position et une orientation donnée, il peut tourner à droite et avancer un pas. On le décrira par
une association de variables d’état et de procédures.

Ajouter une méthode qui permet d’effectuer le mouvement d’un robot à partir de sa position
et son orientation actuelle vers un point d’arrivée.

Traiter l’état du robot en programmation objets et écrire une méthode test.

Exercice 4 :

Fournissez la classe Cercle conçue de manière à ce que le programme suivant fonctionne


correctement :

1. Class TestCercle{
2. public static void main (Sring [] args){
3. //creation d’un cercle de rayon 3.5
4. Cercle c1 = new Cercle (3.5) ;
5. //Retourne le cercle résultant de l’agrandissement appliqué sur C1
6. Cercle c2 = c1.agrandir(2D) ;
7. //Affiche : c1 = (3.5) le paramètre 1 est l’indice du cercle
8. c1.affiche(1) ;
9. //Affiche : c2 = (5.5) le paramètre 2 est l’indice du cercle
10. c2.affiche(2) ;
11. //on obtient sur écran : Les deux cercles sont différents
12. if (c1.egal(c2))
13. System.out.println (‘‘ Les deux cercles sont égaux’’) ;
14. else
15. System.out.println (‘‘Les deux cercles sont différents’’) ;
16. }

Réalisé par Zarrouk ELyes 2