Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| restricted:mco-2:correction:tp2 [2016/02/26 09:18] – fbrucker | restricted:mco-2:correction:tp2 [2016/02/26 09:23] (Version actuelle) – fbrucker | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Correction TP2 ====== | ||
| + | On suppose que vous avez un [[restricted: | ||
| + | |||
| + | |||
| + | ===== Les classes ===== | ||
| + | |||
| + | On montrera la classe Trac et son utilisation avec la méthode main de la classe Main. | ||
| + | |||
| + | ==== Track.java ==== | ||
| + | |||
| + | <code java> | ||
| + | package com.mco; | ||
| + | |||
| + | |||
| + | import java.util.Arrays; | ||
| + | |||
| + | public class Track { | ||
| + | private Dice[] dices; | ||
| + | |||
| + | public Track() { | ||
| + | dices = new Dice[5]; | ||
| + | for (int i=0; i < 5; i+=1) { | ||
| + | dices[i] = new Dice(); | ||
| + | } | ||
| + | |||
| + | } | ||
| + | |||
| + | public void roll() { | ||
| + | for (Dice dice: dices) { | ||
| + | dice.roll(); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | public Dice[] getDices() { | ||
| + | return dices; | ||
| + | } | ||
| + | |||
| + | @Override | ||
| + | public String toString() { | ||
| + | return " | ||
| + | " | ||
| + | ' | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Spécificités : | ||
| + | * Accès à l' | ||
| + | * Utilisation des [[public: | ||
| + | * On utilise la méthode roll de chaque dé. On peut utiliser le même nom pour Track et Dice puisque ces méthdoes ne s' | ||
| + | |||
| + | ==== Main.java ==== | ||
| + | |||
| + | On ne montrera que les ajouts par rapport à la correction du TP1. | ||
| + | |||
| + | <code java> | ||
| + | package com.mco; | ||
| + | |||
| + | public class Main { | ||
| + | static void testTrack() { | ||
| + | System.out.println(" | ||
| + | |||
| + | final int NUMBER_TRIES = 100; | ||
| + | |||
| + | Track track = new Track(); | ||
| + | int sum = 0; | ||
| + | for (int i=0; i < NUMBER_TRIES ; i += 1) { | ||
| + | track.roll(); | ||
| + | System.out.println(track); | ||
| + | for (Dice dice: track.getDices()) { | ||
| + | sum += dice.getPosition(); | ||
| + | } | ||
| + | } | ||
| + | System.out.println((float) sum / NUMBER_TRIES); | ||
| + | } | ||
| + | |||
| + | |||
| + | | ||
| + | testTrack(); | ||
| + | } | ||
| + | } | ||
| + | </ | ||