• Aucun résultat trouvé

Examen de Java sur machine Fiupso 2i`eme ann´ee 2003-2004

N/A
N/A
Protected

Academic year: 2022

Partager "Examen de Java sur machine Fiupso 2i`eme ann´ee 2003-2004"

Copied!
3
0
0

Texte intégral

(1)

Examen de Java sur machine Fiupso 2

i`eme

ann´ ee

2003-2004

Universit´e de Paris Sud

Modalit´es

- Dur´ee : 2 heures

- Tous les documents sont autoris´es.

Nota Bene

Le dernier exercice est optionnel. Il ne peut ˆetre commenc´e que si les deux pr´ec´edents sontenti`erement termin´es.

Exercice 1 Calculatrice

Ecrire un programme java, contenant une seule classe nomm´ee´ Calculettequi af- fiche en boucle l’invite suivante `a l’utilisateur :

1 Somme de deux entiers

2 Soustraction de deux entiers 3 Multiplication de deux entiers 4 Division de deux entiers

5 Sortie du programme

Veuillez entrer votre choix :

et qui attend un entier (entre 1 et 5) entr´e par l’utilisateur. Pour un choix entre 1 et 4, le programme demande ensuite `a l’utilisateur d’entrer les deux entiers de l’op´eration

`

a effectuer, puis affiche le r´esultat de l’op´eration. Si le choix 5 est entr´e, on sort du programme.

Le code fourni doit ˆetre court et doit ˆetre obligatoirement plac´e dans le fichier source Calculette.java.

1

(2)

2 — Examen de Java sur machine Fiupso2i`eme ann´ee 2003-2004

Exercice 2 Liste d’´etudiants

Le but de l’exercice est de manipuler une liste de d’´etudiants en Java. Un ´etudiant est donn´ee par son nom, son pr´enom (tous deux chaˆınes de caract`eres), et sa moyenne aux examens (un entier).

1. D´efinir une classe Etudiantet une classe ListeEtudiantsavec pour chacune un constructeur initialisant les champs `a des valeurs donn´ees. La liste des ´etudiants sera stock´ee dans un tableau, qui sera priv´e. On pr´evoira ´egalement un champ contenant le nombre d’´el´ements de ce tableau.

2. (S´election du moins bon) Ecrire une m´ethodeminimum(int n)trouvant la valeur i telle que le i-i`eme ´etudiant de la liste est celui qui, parmi les ´etudiants des n premi`eres entr´ees du tableau, a obtenu (ou l’un de ceux qui ont obtenu) la moins bonne note.

3. (Tri par s´election) En d´eduire une proc´edure ordonnant les ´etudiants de la liste par ordre de notes d´ecroissantes et affichant les noms des ´etudiants dans cet ordre. On rappelle le pseudo-code du tri par s´election

Tri-Selection

Pouri← 1a n−1faire imax← i

Pourj← i+ 1a nfaire

SiA[j]<A[imax]Alorsimax ← j EchangerA[i] et A[imax]

4. (Test). Ecrire une m´ethode main(...) qui cr´e´ee une liste de 5 ´etudiants, qui l’affiche, qui la trie, puis qui la r´e-affiche.

Exercice 3 Optionnel : classification par multi listes

L’objet de cet exercice est de construire un tableau de listes de personnes, rep´er´ees par leur nom et leur ˆage. Plus pr´ecis´ement, on construira un tableau de LinkedList, chaque liste contenant une ou plusieurs personnes de mˆeme nom.

On prendra la structure suivante pour stocker les informations sur les personnes `a classer

class Personne { String nom;

int age;

LinkedList liste;

public Personne(String sonNom, int sonAge) {...}

(3)

Exercice 3. Optionnel : classification par multi listes 3

On cr´e´era deux classes :

- Une classe ListePersonnesadmettant le squelette suivant:

class ListePersonnes {

LinkedList liste[]; // tableau des listes

int nbPers; // Nombre de personnes dans la liste // Constructeur: initialisation du tableau avec 100 references public ListePersonnes() {...}

// Ajouter une personne (se servir de renvoyerPers() public void ajouter(Personne p) {...}

// renvoyer une reference a une personne du tableau de listes // ayant son champ nom egal a sonNom

public Personne renvoyerPers(String sonNom) {...}

// renvoyer une chaine pour affichage, une liste par ligne public String toString() {...}

- Une classe publique ListePersonnesMain ne contenant qu’une seule m´ethode main(). Cette m´ethode cr´e´e une ListePersonnespuis demande en boucle `a l’utilisateur d’entrer un nom et un age et l’ins`ere dans la liste, tant que l’utilisateur n’a pas entr´e la chaˆıne "q". Enfin, la m´ethode affiche la liste.

Références

Documents relatifs

Si non, donner un contre-exemple et proposer une version

Correction examen UV Mod´ elisation Partie - Probl` emes inverses. Tout document

Ca donne une ellipsoide dont les axes principaux sont les vecteurs v i et dont la racine de la longueur des demi axes correspond aux valeurs singuli` eres... Notes : les axes n’ont

Note : dans cet exercice, vous pouvez r´ esoudre les questions 4, 5, 6, mˆ eme si vous n’avez pas r´ epondu aux questions 1, 2 et/ou 3.. Le but de cette question est de montrer

Le th´ eor` eme de Courant-Fischer est un r´ esultat fondamental qui caract´ erise les valeurs propres d’une matrice sym´

Evidemment, dans le cas d’une variable al´ eatoire discr` ete, la fonction de masse de sa loi peut avoir une expression plus simple que sa fonction de r´ epartition, nous allons en

De mˆeme il suffit qu’on retourne les fl`eches d’un afd, qu’on nomme initiaux les anciens ´etats finals, et final l’ancien ´etat initial, pour obtenir un automate

Montrer que l’ensemble des points fixes de σ est la