Sixième semaine

Exercice 1
Création d'une classe permettant de jouer plusieurs parties à PPC PPC & TestPPC
Exercice 2
Création d'une classe effectuant des opérations arithmétiques simples Operation & TestOperation
Exercice 3
Création d'une classe simulant une calculatrice plus évoluée Calculatrice & TestCalculatrice


Exercice 1 :
Le but de cet exercice est d'écrire et de tester un programme nous permettant de jouer plusieurs parties au jeu Pierre/Papier/Ciseaux. Pour cela on utilisera la dernière version de PPC (celle ou l'on codait les différents coups des joueurs par un chiffre). Les règels du jeu sont les suivantes : Vous devez donc écrire la classe TestPPC permettant de suivre ces règles.


C:\Java\Algo> java TestPPC
Bienvenue au jeu PPC, le premier joueur ayant 3 points gagne !
(0 => Pierre, 1 => Papier, 2 => Ciseaux)
Coup du joueur 1 : 0
Coup du joueur 2 : 2
Le joueur 1 a gagne!
Joueur 1 : 1 point(s) ; Joueur 2 : -1 point(s)
Coup du joueur 1 : 0
Coup du joueur 2 : 2
Le joueur 1 a gagne !
Joueur 1 : 1 point(s) ; Joueur 2 : -1 point(s)
Coup du joueur 1 : 0
Coup du joueur 2 : 2
Le joueur 1 a gagne !
Joueur 1 : 1 point(s) ; Joueur 2 : -1 point(s)

C'est le joueur 1 qui remporte la victoire.
C:\Java\Algo>



Exercice 2 :
Nous voulons maintenant réaliser une classe nous permettant d'effectuer des opérations arithmétiques simples. C'est à dire que nous ne nous intéresserons qu'aux opérateurs binaires (+, -, *, /), et à des opérandes entiers. Pour cela, il vous faudra définir une classe Opérations qui sera caractérisée par deux opérandes entier et un des quatres opérateurs arithmétique, et d'une méthode permettant d'effectuer le calcul et de nous renvoyer le résultat. Dans la classe "Test", on veut que l'utilisateur puisse effectuer autant de calcul qui le désire, il pourra quitter l'application en saisissant le chiffre 0 comme premier opérande.


C:\Java\Algo> java TestOperations
Entrez un nombre    : 15
Entrez un operateur : +
Entrez un nombre    : 15
Le résultat est     : 15 + 15 = 30
Entrez un nombre    : 0
Vous avez effectue 1 calcul(s).
C:\Java\Algo>



Exercice 3 :
Maintenant nous désirons travailler sur une calcultrice un peu plus évoluée. Pour cela, nous allons nous mettre à la place de la calculatrice. Qu'est ce qu'une calculatrice ? Elle est caractérisée pas un certain nombre de boutons, ceux représentant les chiffres ou les opérateurs (on se limitera à + - / et *) et enfin deux touches un peu particulières : la touche CE pour réinitialiser la calculatrice, et la touche égal pour obtenir le résultat du calcul. Dernier point, mais très important : ma calculatrice dispose d'un afficheur me permettant de voir son état iunterne. Lorsque j'allume ma calculatrice, si je tape sur l'une des touches chiffre, le chiffre en question est visualisé dans l'afficheur si je recommence avec un autre chiffre, la calculatrice considère que j'entre un nombre, et décale le chiffre précédant. Ce n'est que lorsque je choisi un opérateur que la calculatrice en déduit que la saisie du premier opérande est terminée, que l'opérateur à utiliser est connu, elle passe donc en attente de la saisie du second opérande. Ce n'est que lorsque l'utilisateur utilisera la touche égal ou un autre opérateur que la calculatrice pourra effectuer le calcul.
Votre mission si vous l'acceptez est donc de remplir la classe Calculatrice suivante :

Cliquer ici pour récupérer le squelette de la classe Calcultrice.

 

class Calculatrice
{

    private int afficheur;
    private int operande;
    private char operateur;

    Calculatrice()
    {
        // initialisation de la calculatrice
    }

    public int getAfficheur()
    {
        return afficheur;
    }

    public void calculAFaire()
    {
        // nécessaire lorsque l'on enchaine les opérations
        // sans utiliser la touche 'égal'
    }    

    public void miseAJourAfficheur(int i)
    {
        // Effectue le décalage des chiffres de l'afficheur
    }

    // Gestion des touches 'opérateurs' 

    public void plus()
    {
        // mise a jour des infos
    }

    public void moins()
    {
        // mise à jour des infos
    }

    public void multiplie()
    {
        // mise à jour des infos
    }

    public void divise()
    {
        // mise à jour des infos
    }

    public void CE()
    {
        // réinitialise la calculatrice
    }

    // Gestion des touches représentants les chiffres 

    public void neuf()
    {
        miseAJourAfficheur(9);
    }

    public void huit()
    {
        miseAJourAfficheur(8);
    }

    public void sept()
    {
        miseAJourAfficheur(7);
    }

    public void six()
    {
        miseAJourAfficheur(6);
    }

    public void cinq()
    {
        miseAJourAfficheur(5);
    }

    public void quatre()
    {
        miseAJourAfficheur(4);
    }

    public void trois()
    {
        miseAJourAfficheur(3);
    }

    public void deux()
    {
        miseAJourAfficheur(2);
    }

    public void un()
    {
        miseAJourAfficheur(1);
    }

    public void zero()
    {
        miseAJourAfficheur(0);
    }

}

Pas d'applet car l'interface graphique fait appel à des bibliothèques non disponibles dans les navigateurs :-(

Pour tester votre classe Calculatrice, créer un répertoire Calc dans lequel vous mettrez votre fichier source ainsi que les fichiers suivants :
Vos fichiers : Calculatrice.java et Calculatrice.class et les fichiers suivants CalculatriceGUI.class, TestCalculatrice$1.class et TestCalculatrice.class qui gèrent l'interface graphique et la classe 'test'. Pour tester votre calculatrice, vous devez taper la commande suivante :
 


C:\Java\Algo\Calc> java TestCalculatrice
C:\Java\Algo\Calc>

Vous devriez voir apparaitre sur votre écran cette magnifique calculatrice :

Pour ceux qui auraient finis, rajouter la notion de mémoire à voter calculatrice.