2
Plus lue
5
Plus lue
6
Plus lue
ALGO & PROGRAMMATION                                                            © Enseignant : Mohamed SAYARI



            Chapitre1:    LES ENREGISTREMENTS ET LES FICHIERS
                                  (LES ENREGISTREMENTS)


Rappel
Q: quels sont les types de données en 3ème année ?
R: les types de données standards: les types numériques, le type booléen, le type caractère et chaîne de
caractères.
    Les types utilisateurs: les types énumérés, les types intervalles, les tableaux à une dimension et les
    tableaux à deux dimensions (matrices)
Q: par quoi est caractérisé un tableau ?
R: nom, taille et type

I. INTRODUCTION
Activité 1:
Un établissement scolaire organise les informations concernant ses classes dans une liste identique à la
suivante:
               NUM        CODE          NOM et PRENOM              Observation         Moyen
                 1         G911          GUIZANI Zied                Passable          11.25
                 2         T825        BEN DAHOU Rania                Faible            9.33
                …                                                       ..               …
                …                                                       …                …
                ….                                                      …                …
                30         S932           Fitouri Rochdi             Passable          10.21

On désire écrire un programme permettant la saisie et le traitement de ces listes sachant que chaque classe
comporte au maximum 40 élèves.

TAF a) Donner la structure de données nécessaire pour les objets à utiliser.
   b) Donner une déclaration algorithmique de ces objets.

Réponses
a)
                                        Objet                Type
                                  NUM                 Numérique (entier)
                                  CODE                Alphanumérique
                                  Nom                 Alphabétique
                                  Observation         Alphabétique
                                  Moyen               Numérique (Réel)

  Nous remarquons que la liste comporte des informations numériques, alphabétique et alphanumériques
b)
             Objet                 Type/Nature                          Rôle
        NUM                 Tableau de 40 entiers        Tableau des numéros des élèves
        CODE                Tableau de 40 chaînes        Tableau des codes
        NOM                 Tableau de 40 chaînes        Tableau des noms et prénoms
        OBSERVATION Tableau de 40 chaînes                Tableau des Observations
        MOYEN               Tableau de 40 réels          Tableau des moyens


4ème SI                             LES ENREGISTREMENTS & FICHIERS                                  PAGE 1
ALGO & PROGRAMMATION                                                              © Enseignant : Mohamed SAYARI



Q: Est-t-il possible de regrouper ces variables au sein d'un même tableau ?
R: Non, car un tableau ne peut contenir que des éléments de même type.

 On remarque que les variables simples ou les tableaux ne permettent pas de ranger des données de types
différents.

 Pour résoudre le problème, on dois créer un nouveau TYPE qui permet de regrouper des données de types
différents. Nous allons utiliser un nouvelles structure appelée ENREGISTREMENT ou ARTICLE
(RECORD en PASCAL) pour réaliser cette tâche.


II. DEFINITION ET DECLARATIONS
a) Définition
Un enregistrement est un type de données défini par l'utilisateur et qui permet de regrouper un nombre fini
d'éléments (ou champs) de types éventuellement différents.

Schéma de la structure:

                  Champ1          Champ2            Champ3            Champ4             Champ5
                   Type1           Type2             Type3             Type4              Type5

                                 Une seule entité d'une variable enregistrement

b) Déclaration


                    En algorithmique                                          En PASCAL

                      TDNT
                    TYPE                                    TYPE
  Nom_type= Enregistrement                                     Nom_type = RECORD
           Champ1 : type1                                               Champ1: type1;
           Champ2 : type2                                               Champ2: type2;
           ………………….                                                     …………………. ;
           Champn : typen                                                Champn: typen;
  Fin Nom_type                                                 END;

                            TDO
          Objet            Type/Nature       Rôle           VAR
                                                              Identificateur_objet : Nom_type;
                                         Enregistrement
  Identificateur_objet      Nom_type
                                           pour……




Remarque: les types (type1, type2, …, type n) peuvent être soit standards, soit définis par l'utilisateur.




4ème SI                             LES ENREGISTREMENTS & FICHIERS                                     PAGE 2
ALGO & PROGRAMMATION                                                          © Enseignant : Mohamed SAYARI

c) Activité2
Déclarer en algorithmique et en PASCAL une variable enregistrement représentant un élève sachant qu'un
élève est caractérisé par un nom, un code, un nom et prénom, un moyen et une observation.
Réponse
                   En Algorithmique                                       En PASCAL
                          TDNT
                                                        TYPE
                    TYPE
                                                            ELEVE = RECORD
  ELEVE= Enregistrement                                                NUM: integer;
               NUM : Entier
                                                                       CODE: string [4];
               CODE : Chaîne [4]
                                                                       NOM: string;
               Nom : Chaîne
                                                                       OBSERVATION: string ;
              OBSERVATION: Chaîne
                                                                       MOYEN: Real;
              Moyen : Réel
                                                             END;
  FIN ELEVE
                          TDO
  Objet Type/Nature            Rôle                    VAR
  ELV     ELEVE     Variable enregistrement               ELV: ELEVE ;
                    représentant un élève


d) Activité3
Déclarer en algorithmique et en PASCAL une variable enregistrement appelé DATE qui comporte:
    Le numéro de jour (jj) en utilisant le type JOURS qui est un nouveau type défini par l'utilisateur qui
       énumère les numéros des jours d'un mois de 1 à 31.
    Le mois (mm) en utilisant le type MOIS qui est un nouveau type défini par l'utilisateur et qui énumère
       les 12 mois de l'année (Janvier, février, mars, .., décembre)
    L'année (aa) qui est un entier

              EN ALGORITHMIQUE                                              EN PASCAL
                       TDNT
                       TYPE
                                                       TYPE
  JOURS : 1..31
                                                             JOURS: 1..31;
  MOIS = (Janvier, février, mars, avril, mai, juin,
                                                             MOIS = (Janvier, février, mars, avril, mai, juin,
  juillet, août, septembre, octobre, novembre,
                                                       juillet, août, septembre, octobre, novembre,
  décembre)
                                                       décembre);
  DATE = ENREGISTREMENT
                                                             DATE = RECORD
           jj: jours
                                                                   jj: jours ;
           mm: mois
                                                                   mm : mois ;
           aa: entier
                                                                   aa : integer;
  FIN DATE
                                                             END;
                         TDO
    Objet        Type/Nature          Rôle             VAR
  calendier          DATE    Variable enregistrement
                               représentant une date     Calendrier: DATE ;


III.UTILISATION DES ENREGISTREMENTS
 o Si on veut schématiser une variable V de type simple, on peut la représenter par un carré V 
 o Si on veut schématiser une variable T de type tableau, on peut la représenter par un tableau T 
 o Si on veut schématiser une variable E de type enregistrement, on peut la représenter par:




4ème SI                             LES ENREGISTREMENTS & FICHIERS                                   PAGE 3
ALGO & PROGRAMMATION                                                         © Enseignant : Mohamed SAYARI


                Champ1 
            E   Champ2 
                ………..
                Champ n 
III.1 Affectation
    Pour affecter une valeur à une variable de type: V  5
    Pour affecter une valeur à une case i d'un tableau T : T[i]  5
    Pour affecter des valeurs aux différents champs d'une variable enregistrement:

                           En Algorithmique                   EN PASCAL
                        Variable.champ  valeur         Variable.champ := valeur ;

Activité 4
Reprenons l'enregistrement ELEVE, affectez respectivement les valeurs suivantes:
                              1, "G911", "Guizani Zied", 11.25, "Passable"

                          En Algorithmique                      En PASCAL
                   Emp.num  1                          Emp.num := 1;
                   Emp.code  "G911"                    Emp.code := 'G911';
                   Emp.nom  "Guizani Zied"             Emp.nom := 'Guizani Zied';
                   Emp.moyen  11,25                    Emp.moyen := 11.25;
                   Emp.observation  "Passable"         Emp.observation := 'Passable';

Remarques :
   Il est possible d'affecter une variable enregistrement dans une autre à condition qu'elles aient la même
      structure
              Exemple:
                     Var e1, e2: eleve;
                     e1:= e2; (ou bien e2:=e1;)  tous les champs de la variable enregistrement à affecter
  seront recopiés dans les champs de l'autre.
   Un champ a exactement les mêmes propriétés qu'une variable du même type.
   Le champ d'une variable enregistrement peut être lui-même un enregistrement.

III.2 Lecture
  Pour lire le contenu d'une variable V de type simple  Lire (v)
  Pour lire le contenu d'un tableau T,on utilise une boucle pour lire chaque élément du tableau  Lire(T[i])
  Pour lire le contenu d'une variable de type enregistrement:
                   En Analyse                  En Algorithme                En PASCAL
          Variable.champ = Donnée        Lire (variable.champ)        Readln (variable.champ)

 Exemple:
                   En Analyse               En Algorithme                     En PASCAL
            Emp.Num = Donnée ("NUM=") Ecrire ("NUM=")                     Write ('NUM=');
                                      Lire (Emp.Num)                      Readln (Emp.Num);

III.3 Ecriture
 L'écriture des valeurs de différents champs d'une variable enregistrement se fait:
                           En Analyse et Algorithme                En PASCAL
                      Ecrire (variable.champ)                Write (variable.champ)




4ème SI                           LES ENREGISTREMENTS & FICHIERS                                   PAGE 4
ALGO & PROGRAMMATION                                                                © Enseignant : Mohamed SAYARI

  Exemple:

              En Analyse et en Algorithme                                         En PASCAL

 Ecrire ("NUM=", ELV.NUM)                                    write ('NUM=', ELV.NUM);
 Ecrire ("CODE=", ELV.CODE)                                  write ('CODE=', ELV.CODE);
 Ecrire ("NOM ET PRENOM=", ELV.NOM)                          write ('NOM ET PRENOM=', ELV.NOM);
 Ecrire ("MOYEN=", ELV.MOYEN)                                write (MOYEN=', ELV.MOYEN);
 Ecrire ("OBSERVATION=", ELV.OBSERVATION)                    write ('OBSERVATION=', ELV.OBSERVATION);


   III.4 Structure AVEC .. FAIRE (With .. Do)
Cette structure est utilisée pour éviter l'utilisation répétée des champs et de la notation avec le point
(variable.champ) et pour simplifier l'écriture.

Cette structure s'utilise avec une opération d'affectation, de lecture et d'écriture.
Syntaxe
                    Au niveau de l’analyse et l’algorithme                    En PASCAL
                AVEC variable FAIRE                                     WITH variable DO
                 {actions à faire}                                      BEGIN
                FIN AVEC                                                  {actions à faire ;}
                                                                        END ;

Activité 5
Réécrire les actions suivantes avec le structure AVEC .. FAIRE

              Elv.NUM  30                                         AVEC ELV FAIRE
              Elv.CODE  "S932"                                         NUM  30
              Elv.NOM  "Fitouri Rochdi"                                CODE  "S932"
  Affectation
              Elv.MOYEN  10.21                                         NOM  "FIROURI Rochdi"
              Elv.OBSERVATION  "PASSABLE"                              MOYEN  10.21
                                                                        OBSERVATION  "PASSABLE"
  Lecture        Ecrire ("NUM =")                                  Ecrire ("NUM= ")
                 Lire (ELV.NUM)                                    Lire (NUM)
  Ecriture       Ecrire ("MOYEN= ", Elv.MOYEN)                     Ecrire ("MOYEN=", Elv.MOYEN)
                                                                   FIN AVEC


Activité 6 (Activité 8 page 19)

  III.5 Vecteur d’enregistrements
Activité 7
Reprenons l’activité 4 concernant une fiche d’un élève contenant son numéro, son code, son nom et prénom,
son moyen et son observation.
Nous désirons utiliser cet enregistrement pour tous les employés de la société.

Question : est ce qu’on peut utiliser un tableau d’enregistrements ?
Réponse : oui, car un vecteur ne peut contenir que des éléments de même type y compris le type
enregistrement.




 4ème SI                              LES ENREGISTREMENTS & FICHIERS                                    PAGE 5
ALGO & PROGRAMMATION                                                          © Enseignant : Mohamed SAYARI

Activité 7
On se propose d’écrire un programme modulaire qui permet de saisir N élèves (5≤ N ≤40), dans un tableau T,
affiche le moyen de la classe et le pourcentage de réussite.
Un élève est caractérisé par un numéro, un code (chaîne de 4 caractères au maximum), un nom et prénom, un
moyen et une observation (10 caractères au maximum).

Analyse du programme principal :
Résultat= Ecrire (″le pourcentage de réussite est : ″, FN pourcentage(t,n))
Ecrire (″le moyen de la classe est : ″, FN calcul (T, n))
T= proc remplir (T, n)
N= proc saisir (n)



                                                TDNT
                                               TYPE
                                     ELEVE= Enregistrement
                                              NUM : Entier
                                              CODE : Chaîne
                                              Nom : Chaîne
                                             observation: Chaîne
                                             Moyen : Réel
                                     FIN ELEVE

                                     TAB = Tableau de 100 ELEVE

                                                     TDO
            Objet      Type /Nature                                 Rôle
              T             TAB           Tableau d’enregistrements pour les fiches des employés




4ème SI                             LES ENREGISTREMENTS & FICHIERS                                 PAGE 6

Contenu connexe

PDF
Récursivité
PDF
Mes devoirs 4 si
PDF
Les algorithmes recurrents
PDF
PDF
Ch1 _ les enregistrements.pdf
DOCX
4SI-Algo-2025 manuel et resumé de programmation
PDF
Travaux Dirigés : Algorithmique et Structure de Données
PDF
Algorithmes de tri
Récursivité
Mes devoirs 4 si
Les algorithmes recurrents
Ch1 _ les enregistrements.pdf
4SI-Algo-2025 manuel et resumé de programmation
Travaux Dirigés : Algorithmique et Structure de Données
Algorithmes de tri

Tendances (20)

PDF
PPSX
Cours Algorithme: Matrice
PDF
Recursiviteeeeeeeeee
PDF
Algorithmes d'approximation
PDF
Devoirs Algorithme + correction pour 4 si
PDF
Exercices en turbo pascal sur les nombres
PDF
Exercices pascal fenni_2018
DOC
Fonctions chaine
PDF
Cours : les listes chainées Prof. KHALIFA MANSOURI
PDF
La programmation modulaire en Python
PDF
Cours structures des données (langage c)
PDF
cours algorithme et structure de données 1er année
DOCX
Résumer sur les fichier et les enregistrement
PDF
Les algorithmes d'arithmetique
PDF
Chapitre iv algorithmes de tri
PDF
Ch2-Notions de base & actions élémentaires.pdf
PDF
Corrige exercices pascal_fenni_2018
PDF
Serie recurrents & arithmetiques
PDF
Exercices pascal tous les chapitres
PDF
bac info : série récursivité
Cours Algorithme: Matrice
Recursiviteeeeeeeeee
Algorithmes d'approximation
Devoirs Algorithme + correction pour 4 si
Exercices en turbo pascal sur les nombres
Exercices pascal fenni_2018
Fonctions chaine
Cours : les listes chainées Prof. KHALIFA MANSOURI
La programmation modulaire en Python
Cours structures des données (langage c)
cours algorithme et structure de données 1er année
Résumer sur les fichier et les enregistrement
Les algorithmes d'arithmetique
Chapitre iv algorithmes de tri
Ch2-Notions de base & actions élémentaires.pdf
Corrige exercices pascal_fenni_2018
Serie recurrents & arithmetiques
Exercices pascal tous les chapitres
bac info : série récursivité
Publicité

En vedette (17)

PDF
Correction
PDF
Travaux dirigés 1: algorithme & structures de données (corrigés)
PDF
Série sous programmes (bac scientifique)
PDF
Sujets de preparation bac tp (sayari)
PDF
Les algorithmes avancés
PDF
Fiche1 ex-sous-programme
PDF
Serie algos approximationx
PDF
DCT1 4SI
DOC
Corrigés exercices langage C
PDF
Se préparer au BAC TP
PDF
Le rôle de la diffusion hertzienne
PDF
SerieBoucle pour
PDF
Les Structures de données
PDF
Informatiques bac scientifiques
PDF
Fiche3 ex-sous-programme
DOCX
Résumer arithmétique
PDF
Sujet bac info 2012 g1, g2 et g3 avec correction
Correction
Travaux dirigés 1: algorithme & structures de données (corrigés)
Série sous programmes (bac scientifique)
Sujets de preparation bac tp (sayari)
Les algorithmes avancés
Fiche1 ex-sous-programme
Serie algos approximationx
DCT1 4SI
Corrigés exercices langage C
Se préparer au BAC TP
Le rôle de la diffusion hertzienne
SerieBoucle pour
Les Structures de données
Informatiques bac scientifiques
Fiche3 ex-sous-programme
Résumer arithmétique
Sujet bac info 2012 g1, g2 et g3 avec correction
Publicité

Similaire à Les enregistrements (20)

PDF
Les enregistrements
PDF
Cours enregistrement baccalauréat informatique
PDF
4sci ap(2)
PDF
Serie enregistrement (bouslahi hamza)
PDF
Serie enregistrement (bouslahi hamza)
PDF
Algorithmique et programmation en Pascal (résumé)
PPT
coursAlg.ppt
DOCX
Activité n°2 chap2
DOC
Chapitre 1
PDF
Les structures en c++ (1)
PDF
Les structures en c++
DOC
Base de-donn-es-bac-si-95ae18
PPTX
Chapitre 2 cours 3eme
PDF
Coursalgorithmique
PPT
AlgorithmiqueTDA et structure de donnees .ppt
PDF
Miniprojet 1
PDF
Cours mass pascalllllllllllle
PDF
Conception de base_de_l_algorithme
PDF
Algorithme
Les enregistrements
Cours enregistrement baccalauréat informatique
4sci ap(2)
Serie enregistrement (bouslahi hamza)
Serie enregistrement (bouslahi hamza)
Algorithmique et programmation en Pascal (résumé)
coursAlg.ppt
Activité n°2 chap2
Chapitre 1
Les structures en c++ (1)
Les structures en c++
Base de-donn-es-bac-si-95ae18
Chapitre 2 cours 3eme
Coursalgorithmique
AlgorithmiqueTDA et structure de donnees .ppt
Miniprojet 1
Cours mass pascalllllllllllle
Conception de base_de_l_algorithme
Algorithme

Les enregistrements

  • 1. ALGO & PROGRAMMATION © Enseignant : Mohamed SAYARI Chapitre1: LES ENREGISTREMENTS ET LES FICHIERS (LES ENREGISTREMENTS) Rappel Q: quels sont les types de données en 3ème année ? R: les types de données standards: les types numériques, le type booléen, le type caractère et chaîne de caractères. Les types utilisateurs: les types énumérés, les types intervalles, les tableaux à une dimension et les tableaux à deux dimensions (matrices) Q: par quoi est caractérisé un tableau ? R: nom, taille et type I. INTRODUCTION Activité 1: Un établissement scolaire organise les informations concernant ses classes dans une liste identique à la suivante: NUM CODE NOM et PRENOM Observation Moyen 1 G911 GUIZANI Zied Passable 11.25 2 T825 BEN DAHOU Rania Faible 9.33 … .. … … … … …. … … 30 S932 Fitouri Rochdi Passable 10.21 On désire écrire un programme permettant la saisie et le traitement de ces listes sachant que chaque classe comporte au maximum 40 élèves. TAF a) Donner la structure de données nécessaire pour les objets à utiliser. b) Donner une déclaration algorithmique de ces objets. Réponses a) Objet Type NUM Numérique (entier) CODE Alphanumérique Nom Alphabétique Observation Alphabétique Moyen Numérique (Réel) Nous remarquons que la liste comporte des informations numériques, alphabétique et alphanumériques b) Objet Type/Nature Rôle NUM Tableau de 40 entiers Tableau des numéros des élèves CODE Tableau de 40 chaînes Tableau des codes NOM Tableau de 40 chaînes Tableau des noms et prénoms OBSERVATION Tableau de 40 chaînes Tableau des Observations MOYEN Tableau de 40 réels Tableau des moyens 4ème SI LES ENREGISTREMENTS & FICHIERS PAGE 1
  • 2. ALGO & PROGRAMMATION © Enseignant : Mohamed SAYARI Q: Est-t-il possible de regrouper ces variables au sein d'un même tableau ? R: Non, car un tableau ne peut contenir que des éléments de même type.  On remarque que les variables simples ou les tableaux ne permettent pas de ranger des données de types différents.  Pour résoudre le problème, on dois créer un nouveau TYPE qui permet de regrouper des données de types différents. Nous allons utiliser un nouvelles structure appelée ENREGISTREMENT ou ARTICLE (RECORD en PASCAL) pour réaliser cette tâche. II. DEFINITION ET DECLARATIONS a) Définition Un enregistrement est un type de données défini par l'utilisateur et qui permet de regrouper un nombre fini d'éléments (ou champs) de types éventuellement différents. Schéma de la structure: Champ1 Champ2 Champ3 Champ4 Champ5 Type1 Type2 Type3 Type4 Type5 Une seule entité d'une variable enregistrement b) Déclaration En algorithmique En PASCAL TDNT TYPE TYPE Nom_type= Enregistrement Nom_type = RECORD Champ1 : type1 Champ1: type1; Champ2 : type2 Champ2: type2; …………………. …………………. ; Champn : typen Champn: typen; Fin Nom_type END; TDO Objet Type/Nature Rôle VAR Identificateur_objet : Nom_type; Enregistrement Identificateur_objet Nom_type pour…… Remarque: les types (type1, type2, …, type n) peuvent être soit standards, soit définis par l'utilisateur. 4ème SI LES ENREGISTREMENTS & FICHIERS PAGE 2
  • 3. ALGO & PROGRAMMATION © Enseignant : Mohamed SAYARI c) Activité2 Déclarer en algorithmique et en PASCAL une variable enregistrement représentant un élève sachant qu'un élève est caractérisé par un nom, un code, un nom et prénom, un moyen et une observation. Réponse En Algorithmique En PASCAL TDNT TYPE TYPE ELEVE = RECORD ELEVE= Enregistrement NUM: integer; NUM : Entier CODE: string [4]; CODE : Chaîne [4] NOM: string; Nom : Chaîne OBSERVATION: string ; OBSERVATION: Chaîne MOYEN: Real; Moyen : Réel END; FIN ELEVE TDO Objet Type/Nature Rôle VAR ELV ELEVE Variable enregistrement ELV: ELEVE ; représentant un élève d) Activité3 Déclarer en algorithmique et en PASCAL une variable enregistrement appelé DATE qui comporte:  Le numéro de jour (jj) en utilisant le type JOURS qui est un nouveau type défini par l'utilisateur qui énumère les numéros des jours d'un mois de 1 à 31.  Le mois (mm) en utilisant le type MOIS qui est un nouveau type défini par l'utilisateur et qui énumère les 12 mois de l'année (Janvier, février, mars, .., décembre)  L'année (aa) qui est un entier EN ALGORITHMIQUE EN PASCAL TDNT TYPE TYPE JOURS : 1..31 JOURS: 1..31; MOIS = (Janvier, février, mars, avril, mai, juin, MOIS = (Janvier, février, mars, avril, mai, juin, juillet, août, septembre, octobre, novembre, juillet, août, septembre, octobre, novembre, décembre) décembre); DATE = ENREGISTREMENT DATE = RECORD jj: jours jj: jours ; mm: mois mm : mois ; aa: entier aa : integer; FIN DATE END; TDO Objet Type/Nature Rôle VAR calendier DATE Variable enregistrement représentant une date Calendrier: DATE ; III.UTILISATION DES ENREGISTREMENTS o Si on veut schématiser une variable V de type simple, on peut la représenter par un carré V  o Si on veut schématiser une variable T de type tableau, on peut la représenter par un tableau T  o Si on veut schématiser une variable E de type enregistrement, on peut la représenter par: 4ème SI LES ENREGISTREMENTS & FICHIERS PAGE 3
  • 4. ALGO & PROGRAMMATION © Enseignant : Mohamed SAYARI Champ1  E Champ2  ……….. Champ n  III.1 Affectation  Pour affecter une valeur à une variable de type: V  5  Pour affecter une valeur à une case i d'un tableau T : T[i]  5  Pour affecter des valeurs aux différents champs d'une variable enregistrement: En Algorithmique EN PASCAL Variable.champ  valeur Variable.champ := valeur ; Activité 4 Reprenons l'enregistrement ELEVE, affectez respectivement les valeurs suivantes: 1, "G911", "Guizani Zied", 11.25, "Passable" En Algorithmique En PASCAL Emp.num  1 Emp.num := 1; Emp.code  "G911" Emp.code := 'G911'; Emp.nom  "Guizani Zied" Emp.nom := 'Guizani Zied'; Emp.moyen  11,25 Emp.moyen := 11.25; Emp.observation  "Passable" Emp.observation := 'Passable'; Remarques :  Il est possible d'affecter une variable enregistrement dans une autre à condition qu'elles aient la même structure Exemple: Var e1, e2: eleve; e1:= e2; (ou bien e2:=e1;)  tous les champs de la variable enregistrement à affecter seront recopiés dans les champs de l'autre.  Un champ a exactement les mêmes propriétés qu'une variable du même type.  Le champ d'une variable enregistrement peut être lui-même un enregistrement. III.2 Lecture  Pour lire le contenu d'une variable V de type simple  Lire (v)  Pour lire le contenu d'un tableau T,on utilise une boucle pour lire chaque élément du tableau  Lire(T[i])  Pour lire le contenu d'une variable de type enregistrement: En Analyse En Algorithme En PASCAL Variable.champ = Donnée Lire (variable.champ) Readln (variable.champ) Exemple: En Analyse En Algorithme En PASCAL Emp.Num = Donnée ("NUM=") Ecrire ("NUM=") Write ('NUM='); Lire (Emp.Num) Readln (Emp.Num); III.3 Ecriture L'écriture des valeurs de différents champs d'une variable enregistrement se fait: En Analyse et Algorithme En PASCAL Ecrire (variable.champ) Write (variable.champ) 4ème SI LES ENREGISTREMENTS & FICHIERS PAGE 4
  • 5. ALGO & PROGRAMMATION © Enseignant : Mohamed SAYARI Exemple: En Analyse et en Algorithme En PASCAL Ecrire ("NUM=", ELV.NUM) write ('NUM=', ELV.NUM); Ecrire ("CODE=", ELV.CODE) write ('CODE=', ELV.CODE); Ecrire ("NOM ET PRENOM=", ELV.NOM) write ('NOM ET PRENOM=', ELV.NOM); Ecrire ("MOYEN=", ELV.MOYEN) write (MOYEN=', ELV.MOYEN); Ecrire ("OBSERVATION=", ELV.OBSERVATION) write ('OBSERVATION=', ELV.OBSERVATION); III.4 Structure AVEC .. FAIRE (With .. Do) Cette structure est utilisée pour éviter l'utilisation répétée des champs et de la notation avec le point (variable.champ) et pour simplifier l'écriture. Cette structure s'utilise avec une opération d'affectation, de lecture et d'écriture. Syntaxe Au niveau de l’analyse et l’algorithme En PASCAL AVEC variable FAIRE WITH variable DO {actions à faire} BEGIN FIN AVEC {actions à faire ;} END ; Activité 5 Réécrire les actions suivantes avec le structure AVEC .. FAIRE Elv.NUM  30 AVEC ELV FAIRE Elv.CODE  "S932" NUM  30 Elv.NOM  "Fitouri Rochdi" CODE  "S932" Affectation Elv.MOYEN  10.21 NOM  "FIROURI Rochdi" Elv.OBSERVATION  "PASSABLE" MOYEN  10.21 OBSERVATION  "PASSABLE" Lecture Ecrire ("NUM =") Ecrire ("NUM= ") Lire (ELV.NUM) Lire (NUM) Ecriture Ecrire ("MOYEN= ", Elv.MOYEN) Ecrire ("MOYEN=", Elv.MOYEN) FIN AVEC Activité 6 (Activité 8 page 19) III.5 Vecteur d’enregistrements Activité 7 Reprenons l’activité 4 concernant une fiche d’un élève contenant son numéro, son code, son nom et prénom, son moyen et son observation. Nous désirons utiliser cet enregistrement pour tous les employés de la société. Question : est ce qu’on peut utiliser un tableau d’enregistrements ? Réponse : oui, car un vecteur ne peut contenir que des éléments de même type y compris le type enregistrement. 4ème SI LES ENREGISTREMENTS & FICHIERS PAGE 5
  • 6. ALGO & PROGRAMMATION © Enseignant : Mohamed SAYARI Activité 7 On se propose d’écrire un programme modulaire qui permet de saisir N élèves (5≤ N ≤40), dans un tableau T, affiche le moyen de la classe et le pourcentage de réussite. Un élève est caractérisé par un numéro, un code (chaîne de 4 caractères au maximum), un nom et prénom, un moyen et une observation (10 caractères au maximum). Analyse du programme principal : Résultat= Ecrire (″le pourcentage de réussite est : ″, FN pourcentage(t,n)) Ecrire (″le moyen de la classe est : ″, FN calcul (T, n)) T= proc remplir (T, n) N= proc saisir (n) TDNT TYPE ELEVE= Enregistrement NUM : Entier CODE : Chaîne Nom : Chaîne observation: Chaîne Moyen : Réel FIN ELEVE TAB = Tableau de 100 ELEVE TDO Objet Type /Nature Rôle T TAB Tableau d’enregistrements pour les fiches des employés 4ème SI LES ENREGISTREMENTS & FICHIERS PAGE 6