Jan.01

TP1: Classe,attributs et méthodes

Exercice 1 :

Les articles sont caractérisés par le schéma suivant :

article

  1. Implémenter la classe Article.
  2. Définir les constructeurs par défaut, avec argument et de recopie.
  3. Définir les accesseurs, les mutateurs et la méthode affiche().
  4. Implanter une classe application, avec une méthode main :
    1. Créer des objets de la classe Article avec les constructeurs par défaut, de recopie et avec arguments
    2. Afficher les attributs de ces objets en utilisant la méthode affiche().

Exercice 2 :

  1.  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
  2. 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.
  3. Implémenter les constructeurs par défaut, avec argument et de recopie (un message sera affiché à chaque fois qu’ils sont exécutés.)
  4. Implémenter un compteur d’instances pour la classe Salarie.
  5. Ajouter une méthode de classe permettant de mettre le compteur à zéro ou à une valeur prédéfinie.
  6. 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.
  7. Implanter une classe application, avec une méthode main :
  1. Créer des objets de la classe Salaire avec les constructeurs par défaut, de recopie et avec arguments.
  2. Afficher les attributs de ces objets en utilisant la méthode AfficheSalaire.
  3. Afficher le nombre des objets instancié de la classe Salaire.
  4. 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();
        }
    }
}
TP
Share this Story:
  • facebook
  • twitter
  • gplus

About Hassan EL Bahi

Assistant Professor at Cadi ayyad University.

Comments(3)

  1. younes
    2025 days ago

    Nice work

  2. abdellah
    1963 days ago

    Merci beaucoup mon Professeur

  3. راشد حسان
    362 days ago

    سلام
    – Matricule : […]
    – Nom complet : [NOM Prénom]
    – Age : […]
    – Ancienneté : […]
    – Salaire : […]
    Ecrire un programme de test pour la classe Employé

Leave a comment

Comment