Jan.01

TP5- Collections ArrayList génériques

Problème :

  1. Créer la classe personne qui contient la code, le nom , le prenom , et l’age.
  2. Créer les constructeurs et les propriétés
  3. Ecrire la methode getInfo();
  4. Créer une liste qui stocke les personnes
  5. Créer la méthode ajouter(personne) qui ajoute une personne à la liste.
  6. Créer la méthode modifier_nom (code, nom) qui modifie le nom d‟une personne.
  7. Créer la méthode supprimer (nom) qui supprime une personne de la liste.
  8. Créer la méthode chercher(code) qui cherche une personne connaissant son code.
  9. Créer la méthode affichage() qui liste toutes les personnes.
  10. Créer la méthode compter() qui return le nombre des personnes stockées.
  11. Créer une fonction categories() qui affiche la catégorie de chaque personne ( « p » si son age <18 , « j » si son age est entre 19 est 35 , et « g » si son age > 35.
  12. Ecrire un menu pour appeler ces fonctions.

 

Correction

La classe Personne

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TP5
{
    class Personne
    {
        int code;
        String nom;
        String prenom;
        int age;
        // Constructeurs
        public Personne() { }
        public Personne(String nom, String prenom, int age, int code)
        {
            this.nom = nom;
            this.prenom = prenom;
            this.age = age;
            this.code = code;
        }
        // les accesseurs et mutateurs
        public int getCode()
        {
           return code; 
            
        }
        public void setCode(int _code) {
             code = _code; 
        }
        public int getAge()
        {
            return age;

        }
        public void setAge(int _age)
        {
            age = _age;
        }
        public string getNom()
        {
            return nom;

        }
        public void setNom(string _nom)
        {
            nom = _nom;
        }
        public string getPrenom()
        {
            return prenom;

        }
        public void setPrenom(string _prenom)
        {
            prenom = _prenom;
        }
        // Question 3
        public String getinfo()
        {
            return " Je m’appelle " + nom + " -- " + prenom + " J’ai " + age + " an j'ai le code " + code;
        }
        // Question 4 : déclaration de la liste des personnes
        static List<Personne> lis = new List<Personne>();


        // Question 5
        static public void ajouter(Personne p)
        {
            lis.Add(p);
        }

        // Question 6
        static public void modifier_nom(int c, String n)
        {
            foreach (Personne p in lis)
            {
                if (p.code == c)
                {
                    p.nom = n;
                }
            }
        }
        
        // Question 7
        static public void supprimer(String n) { 
            foreach (Personne p in lis) {
                if (p.nom.Equals(n)) { 
                    lis.Remove(p);
                    break; 
                } 
            }
        }
        // Question 8
        static public Personne chercher(int code)
        {
            Personne pr = null;
            foreach (Personne p in lis)
            {
                if (p.code == code)
                {
                    pr = p; 
                    break;
                }
            } return pr;
        }
        // Question 9
        static public void affichage()
        {
            foreach (Personne p in lis)
            {
                Console.WriteLine(p.getinfo());
            }
        }
        // Question 10
        static public int compter()
        {
            return lis.Count;
        }
        // Question 11
        static public void categories()
        {
            foreach (Personne p in lis)
            {
                if (p.age <= 18) {
                    Console.WriteLine("la catégorie de " + p.nom + " est :P");
                }
                if (p.age >= 19 && p.age <= 35) {
                    Console.WriteLine("la catégorie de " + p.nom + " est :J");
                }
                if (p.age >= 36) {
                    Console.WriteLine("la catégorie de " + p.nom + " est :G");
                }
            }
        }
    }   
}

La classe Program

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TP7
{
    class Program
    {
        static void Main(string[] args)
        {
            int c;
            do
            {
                Console.WriteLine("1- pour ajouter");
                Console.WriteLine("2- pour afficher");
                Console.WriteLine("3- pour modifier");
                Console.WriteLine("4- pour supprimer");
                Console.WriteLine("5- pour rechercher");
                Console.WriteLine("6- pour afficher la gategorie");
                Console.WriteLine("7- pour compter");
                Console.WriteLine("8- pour quitter");

                c = int.Parse(Console.ReadLine());

                switch (c)
                {
                    case 1:
                        {
                            Console.WriteLine("donner le nom , le prenom, l'age et le code");
                            String n = Console.ReadLine();
                            String pr = Console.ReadLine();
                            int a = int.Parse(Console.ReadLine());
                            int co = int.Parse(Console.ReadLine());
                            Personne p = new Personne(n, pr, a, co);
                            Personne.ajouter(p);
                            break;
                        }
                    case 2:
                        {
                            Personne.affichage();
                            break;
                        }

                    case 3:
                        {
                            Console.WriteLine("entrer le code à modifier");
                            int co = int.Parse(Console.ReadLine());
                            Console.WriteLine("donner le nouveau nom");
                            String n = Console.ReadLine();
                            Personne.modifier_nom(co, n);
                            break;
                        }
                    case 4:
                        {
                            Console.WriteLine("entrer le nom à supprimer");
                            String n = Console.ReadLine();
                            Personne.supprimer(n);
                            break;
                        }
                    case 5:
                        {
                            Console.WriteLine("entrer le code à chercher");
                            int n = int.Parse(Console.ReadLine());
                            Personne.chercher(n); break;
                        }
                    case 6:
                        {
                            Personne.categories();
                            break;
                        }
                    case 7:
                        {
                            Console.WriteLine("le nombre des personnes est :" + Personne.compter());
                            break;
                        }

                }

            } while (c != 8); 

            Console.ReadLine();
        }
    }
}
TP
Share this Story:
  • facebook
  • twitter
  • gplus

About Hassan EL Bahi

Assistant Professor at Cadi ayyad University.

Leave a comment

Comment