Académique Documents
Professionnel Documents
Culture Documents
Examen Session1 2019
Examen Session1 2019
Examen sur 12 points, TP sur 8 points. Les questions sont pour l’essentiel indépendantes et peuvent être traitées
dans n’importe quelle ordre. La première feuille du sujet doit être complétée et rendue, sans indication de votre nom, et
compte pour une intercalaire. Le reste du sujet doit être répondu sur des copies d’examen standards. Vous devez rendre
au moins une copie standard anonymisée. En fin de sujet, un appendice rappelle les noms des principales méthodes des
collections usuelles.
1 Questions de cours
Pour chaque tâche, indiquer la structure de données adaptée parmi List, Set, Map et Deque (chacune apparaît une et
une seule fois).
Tester si une valeur est présente :
On souhaite trouver le premier entier pair d’une liste (ou 0 si tous les entiers sont impairs). Compléter la méthode
suivante (les cases peuvent être laissées vides) :
for ( ) {
if ( ) {
}
}
}
2 Gestion d’un restaurant (questions en page 3)
// Client.java
public class Client {
private final String name;
// Dish.java
public class Dish {
private final String name;
private final double price;
public Dish( ) {
@Override
public String toString() {
return name + " " + price;
}
}
// Table.java
public class Table {
private final int id;
private final int capacity;
// Room.java
public class Room {
private int nbTables = 0;
availableTables = new ArrayList<>();
2.2 Accesseurs
Ajouter des accesseurs pour les propriétés name, price (classe Dish) et capacity (classe Table).
qui crée une réservation pour un client, en trouvant une table disponible et la retournant. La table doit être retirée de
la liste des tables disponibles, et être enregistrée dans bookedTables. S’il n’y a pas de tables disponibles, la méthode
retourne null.
permettant d’ajouter aux commandes le même plat en plusieurs exemplaires. Quel terme donne-t-on au mécanisme
permettant d’avoir plusieurs méthodes du même nom ?
3 Appendice
Méthodes utiles de
— List : add, remove, size,
— Set : add, remove, contains,
— Map : put, containsKey, get, remove.