Jan.01
TP1: Classe,attributs et méthodes
Exercice 1 :
Les articles sont caractérisés par le schéma suivant :

- Implémenter la classe Article.
- Définir les constructeurs par défaut, avec argument et de recopie.
- Définir les accesseurs, les mutateurs et la méthode affiche().
- Implanter une classe application, avec une méthode main :
- Créer des objets de la classe Article avec les constructeurs par défaut, de recopie et avec arguments
- Afficher les attributs de ces objets en utilisant la méthode affiche().
Exercice 2 :
- Créer la classe Salarie. Cette classe aura 5 propriétés de type public :
Matricule int Categorie int Service int Nom string Salaire double - Protéger les propriétés et en interdire l’accès de l’extérieur de l’objet (l’accès aux fonctions membres doit toujours être possible), créer les méthodes d’accès aux attributs Get et Set.
- Implémenter les constructeurs par défaut, avec argument et de recopie (un message sera affiché à chaque fois qu’ils sont exécutés.)
- Implémenter un compteur d’instances pour la classe Salarie.
- Ajouter une méthode de classe permettant de mettre le compteur à zéro ou à une valeur prédéfinie.
- Créer une méthode public AfficheSalaire pour afficher la mention : « Le salaire de » suivie du nom du salarié, suivi de » est de « , suivi de la valeur du salaire.
- Implanter une classe application, avec une méthode main :
- Créer des objets de la classe Salaire avec les constructeurs par défaut, de recopie et avec arguments.
- Afficher les attributs de ces objets en utilisant la méthode AfficheSalaire.
- Afficher le nombre des objets instancié de la classe Salaire.
- Mettre le compteur des objets de la classe à zéro.
Correction Exercice 1
La classe Article
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TP1
{
class Article
{
private string nom;
private string reference;
private double prixUnitaire;
public Article() { }
public Article(string _nom, string _reference, double _prixUnitaire) {
this.nom = _nom;
this.reference = _reference;
this.prixUnitaire = _prixUnitaire;
}
public Article(Article _article)
{
this.nom = _article.nom;
this.reference = _article.reference;
this.prixUnitaire = _article.prixUnitaire;
}
public void setNom(String _nom) {
this.nom = _nom;
}
public void setReference(String _ref) {
this.reference = _ref;
}
public void setPrixUnitaire(double _prixU) {
this.prixUnitaire = _prixU;
}
public string getNom()
{
return nom;
}
public string getReference()
{
return reference;
}
public double getPrixUnitaire()
{
return prixUnitaire;
}
public void affiche() {
Console.WriteLine("L'article : "+this.nom+" sa réference est :"+ this.reference+" et son prix est : "+prixUnitaire);
}
}
}
La classe Program
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TP1
{
class Program
{
static void Main(string[] args)
{
Article a1 = new Article();
Article a2 = new Article("Livre","D0001",25);
Article a3 = new Article(a2);
a.affiche();
Console.ReadLine();
}
}
}
Correction Exercice 2
La classe Salarie
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TP1EX2
{
class Salarie
{
private int Matricule;
private int Categorie;
private int Service;
private string Nom;
private double Salaire;
public static int compteur = 0;
public Salarie()
{
compteur += 1;
Console.WriteLine("Un objet Salaire est créé");
}
public Salarie(int _matricule, int _categorie, int _service, string _nom, double _salaire)
{
compteur += 1;
this.Matricule=_matricule;
this.Categorie=_categorie;
this.Service=_service;
this.Nom=_nom;
this.Salaire = _salaire;
Console.WriteLine("Un objet Salaire est créé");
}
public Salarie(Salarie s)
{
compteur += 1;
this.Matricule = s.Matricule;
this.Categorie = s.Categorie;
this.Service = s.Service;
this.Nom = s.Nom;
this.Salaire = s.Salaire;
Console.WriteLine("Un objet Salaire est créé");
}
// Accesseur et mutateur
public static void CompteurZeor(int c) {
compteur=c;
}
public void affiche() {
Console.WriteLine("Le salaire de " + Nom + " est de :" + Salaire);
}
}
}
La classe Program
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace TP1EX2
{
class Program
{
static void Main(string[] args)
{
Salarie s3 = new Salarie(5, 4, 9, "Moahmed", 5000.20);
Salarie s1 = new Salarie(1, 2, 3, "Ali", 200.60);
Salarie s2 = new Salarie(s1);
Console.WriteLine(Salarie.compteur);
Salarie.CompteurZeor(6);
s2.affiche();
Console.WriteLine(Salarie.compteur);
Console.ReadLine();
}
}
}

younes
Nice work
abdellah
Merci beaucoup mon Professeur
راشد حسان
سلام
– Matricule : […]
– Nom complet : [NOM Prénom]
– Age : […]
– Ancienneté : […]
– Salaire : […]
Ecrire un programme de test pour la classe Employé