• Aucun résultat trouvé

Java DUT 1 Feuille TP2 Université Paris-Est Marne-la-Vallée

N/A
N/A
Protected

Academic year: 2022

Partager "Java DUT 1 Feuille TP2 Université Paris-Est Marne-la-Vallée"

Copied!
2
0
0
En savoir plus ( Page)

Texte intégral

(1)

Java DUT 1 Feuille TP2 Université Paris-Est Marne-la-Vallée

Exercice 1.—

Reprendre la classeSegmentvue en cours (voir les slides du cours 2) qui sert à représenter des segments de droites dans un plan définis par deux points du plan.

a) Écrire la classe Segment. Chaque segment contient deux points nommés startetstop. Mettre les "getters" et les "setters". Écrire deux construc- teurs. L’un prendra en argument deux objets Pixel et l’autre quatres variables entières.

b) Écrire une classe SegmentTest destinée à tester les classes Segment et Pixel. Elle contiendra une méthode main où on crée un segment s1 avec le premier constructeur et un segment s2 avec le second constructeur.

c) On essaye de créer un segment s3 qui va du point (0,0) au point (0,0) avec

public class SegmentTest {

public static void main(String[] args) { Segment s3 = new Segment();

} }

Que se passe-t-il ? Pourquoi ?

d) Écrire dans la classeSegmentune méthodetoStringpermettant d’afficher les deux points d’un segment. On utilisera la méthodetoStringdePixel selon la technique de délégation. DansSegmentTestaffichez s1 et s2.

e) Écrire dans la classeSegmentune méthodetranslatepermettant de dé- placer un segment dans le plan. On utilisera une méthodetranslatede Pixelselon la technique de délégation.

f) Écrire une méthodeconnectedTo qui teste si deux segments ont une ex- trémité (un point) en commun. Dans quelle classe faut-il la mettre ? Quel est le type de retour de cette méthode ?

g) Testez vos méthodes dansSegmentTest.

1

(2)

Exercice 2.—

Dans la méthodemainde la classePixelTeston crée tout d’abord une liste vide destinée à contenir des objetsPixelavec le code ci-dessous (première ligne dumain). Le type des objets contenus dans la liste est indiqué entre les crochets.

En Java, tous les éléments de la liste doivent être du même type contrairement à Python. On ajoute ensuite chaque point dans la liste avec la méthodeadd.

import java.util.ArrayList;

public class PixelTest {

public static void main(String[] args) {

ArrayList<Pixel> list = new ArrayList<Pixel>();

Pixel p1 = new Pixel(0,0);

Pixel p2 = new Pixel(2,5);

list.add(p1);

list.add(p2);

} }

a) Écrire cette méthode main en ajoutant quelques points dans la liste et afficher la listelist. Que remarque-t-on ?

b) Créez une liste de pointslist2qui contient tous les points de coordonnées (i, i)pouri allant de0 à10.

b) On créer un nouveau pointp3. Écrire une instruction qui permet de tester si la listelist2contient le pointp3. On consultera la documentation pour voir quelle méthode de la classeArrayListon peut utiliser.

2

Références

Documents relatifs

Etienne Duris © Université Paris-Est Marne-la-Vallée – Mars 2011 Page 1..

Etienne Duris © Université Paris-Est Marne-la-Vallée – Mars 2010 Page 1..

Etant donnés deux segments de longueurs respectives a et b où a et b sont deux réels positifs ou nuls, construire un segment de longueur

J’ai une activité soutenue de relectrice pour plusieurs journaux internationaux dans le domaine du traitement du signal/image (Applied Optics, IEEE Transactions on Signal

Elle met des moyens à votre disposition pour trouver un stage : l’aide de votre responsable de formation, des offres disponibles sur votre espace numérique de travail,

En faisant usage de ressources informatiques du campus, vous acceptez d’être lié par les termes et conditions de la présente politique. Tout non-respect de la présente politique

[r]

e) Écrire une méthode qui permet de tester si deux personnes ont même nom, prénom et âge. L’une des deux personnes sera passée en argument de la méthode. La méthode doit renvoyer

d) Écrire une méthode translate pour déplacer le disque dans le plan. La méthode prendra en argument les valeurs de déplacement dx et dy sur l’axe des x et l’axe des y. On

f) Écrire une méthode contains(Pixel p) qui renvoie true si le point p passé en argument est un des points du polygone. Que doit ajouter dans la classe Pixel pour que cette

Écrire une classe ArrayStack qui implémente l’interface Stack. La classe ArrayStack contiendra un tableau table d’entiers dont la taille maximale est une constante MAX comme

La classe Index sera utilisée par la classe IndexTest suivante public class IndexTest {.. public static

Aide. Les arguments mot1 et mot2 seront les éléments d’indice 0 et 1 du tableau args qui contient des chaînes de caractères. Pour mettre une chaîne de caractères en majuscule,

pour que le programme lise au clavier une chaîne de caractères puis l’af- fiche en la mettant en majuscule. On trouvera la documentation sur la classe String du packetage java.lang

c) Écrire une classe SegmentTest destinée à tester les classes Segment et Pixel. Elle contiendra une méthode main où on crée un segment s1 avec le premier constructeur et un segment

On définit un classe Polygon qui représente un polygone défini par une suite de points. Les Polygon peuvent avoir un nombre différent de points mais on veut que le nombre maximal

On initialisera le champ author avec &#34;no author&#34; dans ce cas. Comment le compilateur fait-il pour savoir quel constructeur appeler ?. e) Comment faire maintenant pour que

g) Sachant qu’un carnivore à besoin du quart de son poids en viande par semaine, écrire une méthode getMeatForAWeek dans la classe Animal qui renvoit la quantité de viande

— Écrire la méthode void remove(Book b) qui permet de retirer un exemplaire d’un livre. Si le livre apparaît avec un nombre d’exemlaire 0, il sera retiré de la Map.. — Écrire

Ecrire des classes et méthodes pour lire un fichier texte et afficher ensuite un histogramme du texte : la liste des mots présents dans le texte et pour chacun d’eux, leur

a) Modifier la méthode add de l’interface Company et son implémentation dans SetCompany pour qu’elle renvoie un booléen true ou false, true si l’ajout a été fait, false

Comment faire un menu en Java ? En Java, on peut utiliser les Map pour écrire des menus. Cette solution permet d’ajouter des options dans les menus plus facilement qu’avec un

b) Écrire une méthode main dans une classe Test1 où on crée une Company avec un ou deux Employee. On sauvegarde la Company dans un fichier de sérialisation dont le nom sera passé