• Aucun résultat trouvé

Universit´e Paris-Est Cr´eteil IUT de S´enart-Fontainebleau D´epartement informatique IS3 Algorithmique Programmation 2011–2012 Partiel Dur´ee : 2 heures

N/A
N/A
Protected

Academic year: 2022

Partager "Universit´e Paris-Est Cr´eteil IUT de S´enart-Fontainebleau D´epartement informatique IS3 Algorithmique Programmation 2011–2012 Partiel Dur´ee : 2 heures"

Copied!
4
0
0

Texte intégral

(1)

Universit´e Paris-Est Cr´eteil IUT de S´enart-Fontainebleau D´epartement informatique IS3

Algorithmique Programmation 2011–2012

Partiel Dur´ee : 2 heures

Seuls sont autoris´es, `a titre de documents, les listings comprenant explicite- ment le nom de l’´etudiant (et celui-ci seulement) et les notes manuscrites.

Exercice 1.- (Intersection de rectangles)

Ecrire une applet Java qui prend les coordonn´ees (x´ 1, y1), (x2, y2) des som- mets en bas `a gauche et en haut `a droite d’un rectangle de cˆot´es parall`eles aux bords de la fenˆetre, les coordonn´ees (x3, y3), (x4, y4) d’un second rectan- gle, qui affiche ces rectangles ainsi que la plaque rectangulaires d´elimit´ee par l’intersection de ces rectangles.

Pour simplifier, on initialisera ces valeurs `a 5, 100, 250, 500, 50, 50, 600, 400.

Chez vous et pour le prochain TP, am´eliorer l’applet pr´ec´edente de fa¸con `a obtenir ces coordonn´ees de la part de l’utilisateur.

Exercice 2.- (Cases `a cocher)

Ecrire une application Java qui affiche un cadre (fermant) de titre´ hh Cadre avec cases `a cocher ii, `a fond rose, dans lequel apparaissent trois cases `a cocher de noms hh rouge ii, hh vert ii et hh bleu ii tel que le fond prend l’une des huit couleurs possibles suivant les cases `a cocher s´electionn´ees.

Ceci permet de voir la couleur obtenue par combinaison simple des trois couleurs primaires d’´ecran.

Exercice 3.- (Mots utilis´es dans un texte)

Il arrive souvent que l’on ait besoin de donner la liste ordonn´ee des mots utilis´es dans un texte, sans indiquer les doublons (on ne veut pas savoir qu’on a utilis´e 22 fois le mothh le ii). Une fa¸con de faire est d’utiliser unarbre binaire de recherche (ABR) dont les ´el´ements sont des chaˆınes de caract`eres.

Un tel ABR est une structure de donn´ees dynamiques dont les nœuds pos- s`edent trois attributs : la valeur qui est une chaˆıne de caract`eres, le fils gauche et le fils droit qui sont des nœuds. Les m´ethodes sont les constructeurs et les accesseurs dont on a besoin.

- 1o) ´Ecrire la classe JavaNodecorrespondante.

Un ABR est un arbre binaire dont le seul attribut est la racine. Ses m´ethodes sont :

un constructeur par d´efaut cr´eant un arbre vide ;

1

(2)

un constructeur cr´eant le sous-arbre d´etermin´e par un nœud de l’arbre ;

une m´ethode insert(String) permettant d’ins´erer (´eventuellement) un nouvel ´el´ement : `a la racine s’il s’agit du premier ´el´ement, nul part s’il s’agit de la mˆeme valeur que la racine, dans le fils gauche de la racine si l’´el´ement `a ins´erer est strictement plus petit lexicographiquement que la valeur de la racine, dans le fils droit de la racine si l’´el´ement `a ins´erer est strictement plus grand lexicographiquement que la valeur de la racine.

une m´ethodeaffiche(). La fa¸con d’ins´erer rend cette m´ethode facile : il suffit, r´ecursivement, d’afficher le sous-arbre gauche, la valeur de la racine puis le sous-arbre droit pour obtenir les mots dans l’ordre.

- 2o) ´Ecrire cette classe JavaTree.

- 3o) ´Ecrire un programme de test ins´erant, un `a un, les mots de la phrasehh le chat du petit gar¸con ii. On doit obtenir :

chat du gar¸con le petit

[Bien entendu ce programme de test devra ˆetre am´elior´e, `a la maison et pour le prochain TP, en demandant un fichier texte, que l’on d´ecoupera en mots (tokensen linguistique) en utilisant la classe Tokenizer.]

2

(3)

Documentation

1 Les rectangles

Rappelons que la classeGraphicsposs`ede les m´ethodes : drawRectangle(int x, int y, int width, int height);

et :

fillRect(int x, int y, int width, int height);

permettant de dessiner un rectangle et une plaque rectangulaire.

Par ailleurs le paquetage awt contient une classe Rectangle, avec les at- tributs publicsx,y,widthet height, ainsi que le constructeur :

Rectangle(int x, int y, int width, int height);

et la m´ethode :

Rectangle intersection( Rectangle);

2 Les couleurs

• Les couleurs sont les objets de la classeColordu paquetagejava.awt.

• Il y a un certain nombre de couleurs pr´ed´efinies sous la forme de donn´ees statiques :

black blue cyan darkGray gray green lightGray magenta orange pink red white yellow

• On peut aussi d´efinir l’une des 16 777 216 hh vraies ii couleurs grˆace au constructeur :

Couleur(int r, int g, int b);

les variables prenant une valeur comprise entre 0 et 255.

• On peut modifier la couleur de fond d’un composant grˆace `a la m´ethode : setBackground(Color)

3 Cases ` a cocher

Une case `a cocher prend deux valeurs (true ou false) suivant qu’elle est s´electionn´ee ou non. Le paquetage awtcomprend la classe Checkbox, une in- stance de cette classe apparaissant comme un petit carr´e p´ec´ed´e d’un nom, avec une croix dans le carr´e lorsqu’elle est s´electionn´ee (en cliquant dessus avec la souris). Son constructeur le plus courant est :

Checkbox( String);

permettant de lui attribuer un nom. La m´ethode : public boolean getState();

permettant d’en connaˆıtre l’´etat.

3

(4)

Pour pouvoir d´etecter le changement d’´etat d’une boˆıte `a cocher, il faut impl´ementer l’interfaceItemListeneren surchargeant sa m´ethode :

public void itemStateChanged(ItemEvent);

4 Les chaˆınes de caract` eres

Rappelons que la m´ethode de String: public int compareTo(String );

renvoie un entier strictement n´egatif si le mot objet est strictement plus pe- tit (dans l’ordre lexicographique) que le mot argument, nul s’ils sont ´egaux et strictement positif dans le cas de strictement plus grand.

4

Références

Documents relatifs

Ce programme cr´eera alors deux fichiers (texte) : un fichier ‘texte.txt’ constitu´e du reprenant le contenu du fichier entr´e dont on a enlev´e tous les caract`eres ‘*’ et

Ecrire une application Java qui affiche un cadre (fermant) de titre ´ hh Cadre avec balle qui se d´eplace ii , ` a fond bleu dans lequel apparaˆıt une balle jaune de rayon dix

On obtient un arbre ordon- n´e dont l’´el´ement le plus grand du tableau se retouve ` a la racine de l’arbre (donc l’´el´ement d’index 0 de sa repr´esentation

- Pour la première lettre du message, ‘e’ étant la cinquième lettre de l’al- phabet, ‘p’ est remplacé par la quatrième lettre qui suit ‘p’, c’est-à-dire ‘t’... -

- 3 o ) Écrire une application Java demandant le nom d’un fichier (texte) source, le nom d’un fichier (texte) but et qui place dans le fichier but la liste des mots se trouvant dans

Le mˆeme responsable veut que vous configuriez un poste sous Linux pour que celui-ci n’accepte que les paquets provenant de l’hˆ ote d’adresse IP 209.85.229.106 (correspondant au

1.. Vous encadrerez en particulier vos commentaires concernant le nombre d’oc- tets total de la trame, celui de chacun des en-tˆetes, l’adresse MAC du desti- nataire, la longueur

Le responsable d’une entreprise ultra-sensible, dont les postes informatique sont tous sur le mˆeme r´eseau local Ethernet avec adresses IP donn´ees par DHCP, a r´ecup´er´e