Vous êtes sur la page 1sur 5

République Algérienne Démocratique et Populaire

Ministre de la formation et de l’Enseignement Professionnels


Centre de Formation Professionnelle et d’Apprentissage
Zouaie Mebarek *Sédrata* W.Souk Ahras

Date:
Spécialité : Technicien en Informatique de gestion Semestre :
S2
Module : Elaborer des algorithmes complexes N° de la
Séance:
Thème : Les enregistrements (articles) Temps

Objectif
opérationnel
A la fin de la séance, le stagiaire sera capable de représenter les données sous formes d’articles
en utilisant les enregistrements avec précision.et sans fautes.

Moyens Didactiques :
L’enseignant Le stagiaire
*Tableau magique *Cahier
*Marqueurs *stylos
*Brosse *Créant
* le Cours, plan de leçon et fiche technique *PC
*PC

Aides Pédagogiques:
 Néant.

Références Bibliographique:.
Le lien du site web: http://unidentified-one.net.
L’auteur: Olivier Mondet.
Numéro des pages: onglet Algorithmiques.
Les phases principales de déroulement de la leçon
L’enseignant Le stagiaire Remarques
*Rappel.
*Création du centre d’intérêt
*il est préférable que
- si on a des éléments de même type comment peut-on les les stagiaires
découvrent le titre de
présenter?
la leçon.
*L’objectif opérationnel.
A la fin de la séance, le stagiaire sera capable de représenter…
*Les réponses
*Mise en difficulté°1«Définition d’un enregistrement » possibles :
* fichier, enregistrement
 Qu’est-ce qu’un enregistrement ?

*Exposition, explication et démonstration :
Dans le cours.
*Evaluation partielle : * attention et
concentration.
Question Ouverte : -donner des exemples.
*Mise en difficulté°2«Déclaration»
 Qu’est-ce qu’un enregistrement et comment on le crée?
*Exposition, explication et démonstration : *Les réponses
possibles :
La structure d'une déclaration d'enregistrement :
correctes
VAR nom_variable :RECORD champ1:type ; champ2:type
;..END ;
*Evaluation partielle :
*Les réponses
Question Ouverte : -donner des exemples.
possibles :
*Mise en difficulté°3«Utilisation des enregistrements» correctes
 Comment on utilise les enregistrements?
*Exposition, explication et démonstration :
Comme l'affectation fonctionne toujours pour des variables de
même type, on peut écrire DATE1:=DATE2.
*Evaluation partielle :
*Les réponses
Question Ouverte : - refaire des exemples. possibles :
correctes
*Evaluation finale :
Evaluer les notions du cours par un exercice.
*Les réponses
Solution :
possibles :
La solution est dans le cours comme des exercices. * dans le cours.
Contenu du cours
*Introduction
Dans un tableau, tous les constituants doivent être semblables. Ce n'est pas le cas des enregistrements,
qui sont des variables composées de plusieurs variables (ou CHAMPS) de types différents.

1. Définition d’un enregistrement


Un enregistrement est une collection d’information structurées (comme un tableau) concernant une
entité ou un individu.

Par exemple, les informations concernant un étudiant (matricule, nom, prénom, année d’entré,…)
constituent un enregistrement qu’on pourra par la suite stocker dans un fichier.

Un enregistrement peut contenir des données de types différents


Les données d’un enregistrement ne sont pas forcément indexées par des entiers (ou d’autres «
scalaires »).

2. Déclaration
La structure d'une déclaration d'enregistrement :
Type Enreg = Record
Var1 : type1 ;
Var2 : type2
VarN : typeN ;
Fin
Var Enregistrement : Enreg ;
Exemple
TYPE date = RECORD
jour: 1..31;
mois: 1..12;
an: 1980..1999 ;
END;
facture = RECORD
reference: integer;
jour:date; {enregistrement d'enregistrement}
client: string[100];
total_HT: real;
END;
VAR date1,date2:date;
comptes: array [1..100] of facture;
fact:facture;
Dans un enregistrement, chaque champ doit avoir un nom différent. Mais pour des enregistrements
différents on peut réutiliser le même nom de champ (ici JOUR).

3. Utilisation des enregistrements


Comme l'affectation fonctionne toujours pour des variables de même type, on peut écrire
DATE1:=DATE2.
On accède à une composante par NOM_VARIABLE . NOM_CHAMP :
3|Page
writeln('référence de la facture ? ');
readln(fact.reference);
writeln('mois de la facture ? ');
readln(fact.jour.mois);
writeln('jour de la facture ? ');
readln(fact.jour.jour);
for i:= 1 to nb_fact do writeln(comptes[i].prix);

Une composante d'enregistrement s'utilise comme une variable du même type (avec les mêmes
possibilités mais aussi les mêmes limitations).

Exemple
Une date sera représentée par un enregistrement composé de 2 entiers et un mot.
L’enregistrement est composé de 3 « champs » notés Jour, Mois et Année.
La déclaration de type pourra être :
TYPE date = RECORD
Jour : 1..31 ; { intervalle de N }
Mois : string ; { chaîne de caractères }
Annee : 1900..2100; { entier dans un intervalle }
Fin;
Des variables avant et maintenant de ce type seront déclarées par
VAR avant,maintenant : date;
On pourra alors utiliser dans un programme :
• les variables avant et maintenant. Par exemple : avant:=maintenant;
• les différents champs de ces variables.
Exemple
avant.Jour:=19;
avant.Mois:='Novembre';
avant.Annee:=2019; { 19/12/2019 }
if (maintenant.Mois=avant.Mois)
and(maintenant.Annee=avant.Annee)
then nb_jours:=maintenant.Jour-avant.Jour;

Exercice
Soit la structure Personne schématisée par le nom (chaîne de 30 caractères maximum), le numéro de
téléphone (10 caractères maximum), le numéro de carte bancaire (entier).
Ecrire un programme qui permet l'enregistrement de 100 personnes sous forme tabulaire.
Solution :
program annuaire;
uses crt;
type
Personne = record
nom: string[30];
telephone: string[10];
nCarte: word;
end;
var
4|Page
Annuaire: array[1..100] of Personne;
i: integer;
begin
clrscr;
i := 1;
while (i <= 100) do
begin
case i of
1: writeln('Entrez les paramètres de la première personne');
2: writeln('Entrez les paramètres de la seconde personne');
3..10: writeln('Entrez les paramètres de la ', i, 'ième personne');
end;
Write('Nom : ');
readln(Annuaire[i].nom);
write('Numero de telephone : ');
readln(Annuaire[i].telephone);
write('Numero de carte banquaire : ');
readln(Annuaire[i].nCarte);
i := i + 1;
writeln;
end;
writeln('Opération de lecture terminee!!!');
readln;
end.

5|Page

Vous aimerez peut-être aussi