Information

Author(s) Ludovic TAFFIN
Deadline No deadline
Submission limit No limitation

Sign in

Mission 7 : Q* DeStats - equals

On vous donne la classe DeStats dont voici le corps:

public class DeStats extends De {

    private int lances;
    private int[] resultats;

    /*
     * @pre s != null;
     * @post Crée une instance de la classe DeStats
     *       avec comme nom s
     */
    public DeStats(String s) {
        /* Code non fourni */
    }

    /*
     * @pre -
     * @post retourne le tableau des résultats du dé this
     */
    public int[] getResultats() {
        /* Code non fourni */
    }

    /*
     * @pre 1 <= n <= 6
     * @post retourne le nombre de fois que le dé
     *       a donné comme résultat n
     */
    public int statistique(int n) {
        return this.resultat[n-1];
    }

    /*
     * @pre -
     * @post incrémente le nombre de lancés et le
     *       nombre de fois qu'un chiffre est sorti.
     *       Retourne le chiffre que le dé a donné.
     */
    public int lance() {
        /* Code non fourni */
    }

    /*
     * @pre -
     * @post retourne le nombre de lancés du dé this
     */
    public int getLances() {
        return this.lances;
    }

    /*
     * @pre -
     * @post retourne une description du dé sous forme
     *       d'un String. Le format retourné est le nom du
     *       dé suivi des statistique sous forme de tableau
     */
    public String toString() {
        /* Code non fourni */
    }

    /*
     * @pre -
     * @post retourne true si this et o sont deux DeStats identiques
     */
    public boolean equals(Object o) {
        // A complèter
    }
}

Pour information, la classe De ressemble à ceci :

import java.util.Random;

public class De {
    private String nom; // le nom de ce dé (par exemple sa couleur)
    protected Random r; // nombre aléatoire

    /*
     * @pre nom != null
     * @post crée l'instance de la classe De ayant comme nom la chaine n
     *      initilisé le générateur de nombres aléatoires
     */
    public De(String n) {
        nom = n;
        r = new Random();
    }

    /*
     * @pre -
     * @post lance le dé et retourne la valeur du dé
     */
    public int lance() {
        return r.nextInt(6)+1;
    }

    /*
     * @pre -
     * @post retourne le générateur de nombres aléatoires utilisé par le dé
     */
    public Random getRandom() {
        return r;
    }

    /*
     * @pre -
     * @post retourne le nom du dé
     */
    public String getNom(){
        return nom;
    }

    /*
     * @pre n != null
     * @post modifie le nom du dé qui est maintenant n
     */
    public void setNom(String n){
        this.nom = n;
    }

    /*
     * @pre r != null
     * @post modifie le générateur de nombres aléatoires du dé qui est maintenant r
     */
    public void setRandom(Random r){
        this.r = r;
    }

    /*
     * @pre -
     * @post retourne une chaîne de caractères représentant le dé
     */
    public String toString(){
        return this.nom;
    }

    /*
     * @pre -
     * @post retourne true ssi other est un dé identique à celui-ci (même nom et même générateur aléatoire)
     */
    public boolean equals(Object other) {
        /* Code non fourni */
    }
}

equals

Ecrivez le contenu de la méthode equals de la classe DeStats.