LICENCE MIAGE

P.O.O : langage JAVA

 

Travaux dirigés

Série n°3


This document is the API specification for the Java 2 Platform, Standard Edition, version 1.3.1.


EXERCICE 1 : Le nombre inconnu au pays des objets !

EXERCICE 2 : Le nombre inconnu dans un intervalle [min..max]

EXERCICE 3 : Plusieurs stratégies pour trouver le nombre inconnu


EXERCICE 1 :  Le nombre inconnu au pays des objets !  Jeux.java            EssaiAuClavier.java


a)      On considère de nouveau dans cet exercice le problème du nombre mystérieux (voir serie1 ). On suppose que le nombre à découvrir est un entier dans l’intervalle [0..100]. Compléter les deux classes JeuxVersionEtudiant.java et EssaiAuClavier et tester votre solution avec la classe suivante :

public class Test {

 public static void main (String args[]){

  Jeux leJeux = new Jeux() ;

  EssaiAuClavier e ; int resultat ;

  do {

     e = new EssaiAuClavier() ;

     resultat=leJeux.compareTo(e) ;

     if (resultat>0) System.out.println("TROP GRAND");

     else if (resultat<0) System.out.println("TROP PETIT");

  } while (resultat!=0) ;

  System.out.println("BRAVO vous avez trouvé en "+leJeux.score+" coups");

  System.exit(0);

 }

}

 

b)      - Modifier la classe Jeux pour que l’on ne puisse pas tricher dans la méthode main en changeant le nombre inconnu du jeu.

- Modifier la classe Jeux pour que l’on ne puisse pas tricher dans la méthode main en changeant le score du jeu.

 


EXERCICE 2 : Le nombre inconnu dans un intervalle [min..max] !  Jeux.java     EssaiAuClavier.java


a)      On souhaite rechercher un entier inconnu dans un intervalle [min..max] quelconque. Modifier les deux classes Jeux et EssaiAuClavier et tester votre solution avec la classe suivante :

import unsa.Console;

 

public class Test2{

 public static void main (String args[]){

  int min=Console.readInt("Borne inferieure:");

  int max=Console.readInt("Borne superieure:");

  Jeux monJeux = new Jeux(min, max) ;

  EssaiAuClavier e ; int resultat ;

  do {

     e=new EssaiAuClavier(monJeux) ;

     resultat=monJeux.compareTo(e) ;

     if (resultat>0) System.out.println(e.proposition+" EST TROP GRAND");

     else if (resultat<0) System.out.println(e.proposition+" EST TROP PETIT");

  } while (resultat!=0) ;

  System.out.println("BRAVO vous avez trouvé "+e.proposition+" en "+monJeux.getScore()+" coups");

  System.exit(0);

 }

}

 

b)      Modifier votre application de façon a réduire l’intervalle de recherche au fur et à mesure des essais.

 


EXERCICE 3 : Plusieurs stratégies pour trouver le nombre inconnu !

Test3.java    Jeux.java

EssaiAuClavier.java     EssaiStupide.java  EssaiIntelligent.java     Essai.java


On souhaite pouvoir utiliser différents stratégies pour trouver le nombre inconnu.

a)      Coder une nouvelle classe EssaiStupide.java qui fait des propositions au hasard.

b)      Coder une nouvelle classe EssaiIntelligent.java qui propose la valeur médiane.

c)      Relever ce que les trois méthodes EssaiAuClavier, EssaiStupide, EssaiIntelligent ont en commun et exploiter cette information pour « coder objet » ;)

 


Haut du document