| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 
 |  
 
using System;
using System.IO;
 
namespace TestModele
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Grand programme");
            GrandProgramme();
            Console.WriteLine();
 
            Console.WriteLine("Petite Procédures");
            PetitesProcedures();
            Console.WriteLine();
 
            Console.WriteLine("Programmation Objet");
            ProgrammationObjet();
            Console.WriteLine();
 
            Console.ReadKey(true);
        }
 
        static void GrandProgramme()
        {
            Console.WriteLine("Ligne ?");
            int indice = -1;
            while (!int.TryParse(Console.ReadLine(), out indice) && indice > 0)
            {
                Console.WriteLine("Ligne ? (je te demande un nombre, banane !)");
            }
 
            string ligne = string.Empty;
            using (TextReader tr = new StreamReader("c:\\in\\personnes.txt"))
            {
                int i = 0;
                while (++i < indice)
                {
                    tr.ReadLine();
                }
                ligne = tr.ReadLine();
                tr.Close();
            }
 
            string[] infos = ligne.Split(';');
            Console.WriteLine("Nom :\t{0}\nPrénom : {1}\nAge :\t{2} ans", infos[0], infos[1], (int)(DateTime.Now.Subtract(DateTime.Parse(infos[2])).TotalDays / 365.25));
        }
 
        static void PetitesProcedures()
        {
            int indice = GetIndice();
            string line = GetLine(indice);
            DisplayLine(line);
        }
 
        static int GetIndice()
        {
            Console.WriteLine("Ligne ?");
            int indice = -1;
            while (!int.TryParse(Console.ReadLine(), out indice) && indice > 0)
            {
                Console.WriteLine("Ligne ? (je te demande un nombre, banane !)");
            }
            return indice;
        }
 
        static string GetLine(int indice)
        {
            string line = string.Empty;
            using (TextReader tr = new StreamReader("c:\\in\\personnes.txt"))
            {
                int i = 0;
                while (++i < indice)
                {
                    tr.ReadLine();
                }
                line = tr.ReadLine();
                tr.Close();
            }
            return line;
        }
 
        static void DisplayLine(string line)
        {
            string[] infos = line.Split(';');
            Console.WriteLine("Nom :\t{0}\nPrénom : {1}\nAge :\t{2} ans", infos[0], infos[1], (int)(DateTime.Now.Subtract(DateTime.Parse(infos[2])).TotalDays / 365.25));
        }
 
        static void ProgrammationObjet()
        {
            int indice = GetIndice();
            string line = GetLine(indice);
            Personne p = new Personne(line);
            p.Display();
        }
 
        class Personne
        {
            public string Nom { get; set; }
            public string Prenom { get; set; }
            public DateTime DateNaissance { get; set; }
 
            public Personne(string s)
            {
                string[] infos = s.Split(';');
                Nom = infos[0];
                Prenom = infos[1];
                DateNaissance = DateTime.Parse(infos[2]);
            }
 
            public void Display()
            {
                Console.WriteLine("Nom :\t{0}\nPrénom : {1}\nAge :\t{2} ans", Nom, Prenom, (int)(DateTime.Now.Subtract(DateNaissance).TotalDays / 365.25));
            }
        }
    }
} | 
Partager