Académique Documents
Professionnel Documents
Culture Documents
de Marrakech (FSSM)
Rapport TP N °3
Année Universitaire
2022/2023
Exercice 1 :_________________________________________________________________ 3
Solution de l’exercice 1: ______________________________________________________ 4
Exercice 2 :_________________________________________________________________ 7
Solution de l’exercice 2 : _____________________________________________________ 8
Exercice 1 :
On désire gérer le personnel d'un établissement hospitalier qui est constitué des
médecins, infirmiers(e) et du personnel administratif.
Soit la classe Personnel décrite par ses données membres privées :
Un matricule
Un nom
Un service
honoraire_journalier (privée)
nbreJour_travail (privée)
1. Définir cette classe avec ses données membres et deux methodes:
1.1 afficher() qui affiche les informations de chaque objet créer à
partir de cette classe.
2.2 calcul_salaire_mensuel() qui calcule le salaire mensuel en
fonction de nombre de jour travaillé et honoraire_journalier (càd
le prix d'un jour de travail)
2. On dérive la classe Personnel déjà vue par une classe Medecin. En plus
des données membres Personnel, la classe Medecin a comme données
membres :
Fonction
Chiffre_affaire
Taux_commission
Les méthodes sont les suivantes.
La méthode calcul_salaire_mensuel() intègre un mode de
calcul comme suit :
Calcul_salaire_mensuel=(Chiffre_affaire*Taux_commission)+(honoraire_journalier*nbreJour_travail)
3
Le médecin Alami immatriculé "M456" affecté au service " chirurgie"
aura pour salaire mensuel 31 500 Dhs
Solution de l’exercice 1:
1) la classe Personnel :
package exercice1_tp3;
public Personnel( String matricule, String nom ,String service,float honoraire_journalier ,int
nbreJour_travail) {
this.matricule = matricule;
this.nom = nom ;
this.service = service ;
this.honoraire_journalier = honoraire_journalier;
this.nbreJour_travail = nbreJour_travail;
}
/*1.1 afficher() qui affiche les informations de chaque objet créer à partir de
cette classe. */
public void afficher(){
System.out.println("matricule :"+ matricule +"nom"+ nom
+"service:"+service+"honoraire_journalier"+honoraire_journalier+"nbreJour_travail"+
nbreJour_travail );
}
/*2.2 calcul_salaire_mensuel() qui calcule le salaire mensuel en fonction de
nombre de jour travaillé et honoraire_journalier */
float calcul_salaire_mensuel() {
float somme = honoraire_journalier * nbreJour_travail ;
return somme;
}
4
2) la classe Medecin et la classe TestPersonnel:
package exercice1_tp3;
/* La méthode calcul_salaire_mensuel()
Calcul_salaire_mensuel=(Chiffre_affaire*Taux_commission)+(honoraire_journalier*nbreJou
r_travail) */
public float calcul_salaire_mensuel() {
return (Chiffre_affaire * Taux_commission)+super.calcul_salaire_mensuel();
}
// La méthode afficher() qui affiche les informations des médecin
public void afficher(){
System.out.println(" Le médecin "+ nom +" immatriculé "+ matricule+" affecté au
service " + service +""+
" aura pour salaire mensuel "+ calcul_salaire_mensuel() );
}
5
package exercice1_tp3;
Exemple d’exécution :
6
Exercice 2 :
Il s'agit de modéliser un crayon puis un crayon de couleur en java.
1. La classe Crayon possède :
un attribut longueur
un constructeur avec un paramètre longueur. Si le paramètre est
négatif,
la longueur est nulle
une method setLongueur possède un parameter de type int. Elle
change la longueur du crayon en fonction du paramètre, si le
paramètre est négatif, la longueur devient nulle
une méthode qui retourne la longueur du crayon
une méthode affiche(), qui affiche le texte "crayon de longueur :"
ainsi que la longueur
2. La classe CrayonCouleur hérite de la classe Crayon et définit les
champs suivants :
un attribut couleur de type String
un constructeur avec deux paramètres longueur et couleur
une méthode setCouleur(String couleur) pour modifier la couleur
une méthode modifie(int longueur, String couleur) permettant de
modifier les attributs longueur et couleur en utilisant les méthodes
setLongueur et setCouleur
une méthode qui spécifie la méthode affiche() de la classe Crayon
et qui affiche en plus de la longueur la couleur du crayon
3. On définit une classe principale EssaiCrayon qui permet de :
3.1 Créer un crayon de couleur de longueur =20 et de couleur rouge
3.2 Afficher la longueur et la couleur
3.3 Modifier la longueur par 10 et la couleur par bleu
3.4 Afficher la nouvelle longueur et la nouvelle couleur
7
Solution de l’exercice 2 :
1) la classe Crayon:
package exercice2_tp3;
if(longueur<0){
this.longueur = 0;
}else {
this.longueur = longueur;
}
}
8
2) la classe CrayonCouleur:
package exercice2_tp3;
if(longueur<0){
this.longueur = 0;
}else {
this.longueur = longueur;
}
}
9
3) la classe EssaiCrayon:
package exercice2_tp3;
Exemple d’exécution :
10