Conception et Structures d'Algorithmes
Conception et Structures d'Algorithmes
I - Notions générales
A - Définitions
Un algorithme peut être défini comme la séquence d'action permettant d'arriver à un résultat déterminé à partir d'une
situation donnée. Il doit respecter les règles suivantes :
1. il est défini sans ambiguïté
2. il se termine après un nombre fini d'opérations
3. toutes les opérations en doivent pouvoir être effectuées par un homme utilisant des moyens manuels
4. il manipule des objets qui doivent être définis de façon très précise.
B - Les objets
Tous les objets utilisés dans un algorithme doivent être déclarés pour cela nous déterminons quels sont les objets de
valeurs constantes et variables.
1 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Les constantes :
CONST nom_objet = valeur
Les variables :
VAR nom_objet : type
Remarque : - si plusieurs variables sont de même type nous pouvons les regrouper sur une même ligne ;
- les constants sont déclarés en premier ;
- les termes réservés CONST et VAR ne figure qu'une seule fois dans l'algorithme ;
Exemples : CONST max. : 50
min. : 10
VAR jour, mois, année : chaîne de caractères
Remarque : afin de permettre une plus grande visibilité, il faudra utiliser des commentaires délimités par les sigles
/*commentaires*/.
Programme nom_pg
Début
| Action 1
| Action 2
| etc.
Fin
Question à me poser :
- quelles sont les données dont on dispose ?
- quelles sont les résultats que l'on doit obtenir ?
II - Instructions élémentaires
A – Affectation
Nous disposerons d'une instruction de saisie qui permet de récupérer une valeur entrée au clavier et d'une
instruction d'affichage qui permet l’édition d'une valeur à l'écran.
1 -- Instructions d'entrée
Saisir (nom_var)
nom_var est une variable déclarée
2 -- Instructions de sortie
Afficher (valeur)
3 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Remarque : dans le cas d'un dialogue via le clavier, il convient d'afficher des messages facilitant la communication.
Exemple : écrire un algorithme permettant de calculer et d'afficher le nombre de caractères d'un mot quelconque.
Début
| Afficher (« Quel est le nom ? »)
| Saisir (nom)
| compte ← longueur (nom)
| Afficher (« Le nombre de caractères et de : », compte)
Fin
Début Début
| Afficher (« 1^2 = », 1^2) | Afficher (« 1^2 = 2 »)
| Afficher (« 2^2 = », 2^2) | Afficher (« 2^2 = 4 »)
| Afficher (« 3^2 = », 3^2) | Afficher (« 3^2 = 9 »)
| Afficher (« 4^2 = », 4^2) | Afficher (« 4^2 = 16 »)
| Afficher (« 5^2 = », 5^2) | Afficher (« 5^2 = 25 »)
Fin Fin
A -- La structure alternative
Si condition alors
| action 1
Sinon action 2
Fsi
4 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Exemple : écrire un algorithme permettant de calculer et d'afficher la valeur absolue et la différence entre le nombre.
Programme Calcul v 1
Début
| Afficher (« Veuillez saisir le premier nombre »)
| Saisir (x)
| Afficher (« Veuillez saisir le deuxième nombre »)
| Saisir (y)
| Si dif < 0 alors
| | abs ← dif * - 1
| | sinon abs ← dif
| Fsi
| Afficher (« La valeur absolue est de », abs)
Fin
B -- La structure conditionnelle
Si condition alors
| action
Fsi
Début
| Afficher (« Veuillez saisir le premier nombre »)
| Saisir (x)
| Afficher (« Veuillez saisir le deuxième nombre »)
| Saisir (y)
| dif ← x - y
| Si dif < 0 alors
| | abs ← dif * - 1
| Fsi
| Afficher (« La valeur absolue est de », dif)
Fin
5 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
C -- Imbrication de Si
Il se peut un dans certains cas que l'expression d'un si ne suffise pas à exprimer tout les cas de figure.
Si condition 1 alors
| Si condition 2 alors
| | action 1
| Fsi
Sinon
| Si condition 3 alors
| | action 2
| Sinon
| | Si condition 4 alors
| | | action 3
| | Fsi
| Fsi
Fsi
Exemple : écrire un algorithme permettant d'afficher la tarification d'une lettre en fonction de son poids
- poids <= 20g : 0,50 €
- 20 < poids <= 50g = 0,70 €
- Poids > 50g : 1,10 €
Exemple : écrire une algorithme permettant en nous vous de demander de demander le numéro du mois en cours et
d'afficher le nom du mois correspondant.
6 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Programme mois v 1
Var numéro : entier
mois : chaîne de caractère
Début
| Afficher (« Entrez le numéro du mois »)
| Saisir (numéro)
| Si (numéro < 1) ou (numéro > 12) alors
| | Afficher (« Erreur de saisie »)
| Sinon
| | Si numéro = 1 alors
| | | mois ← « Janvier »
| | Sinon
| | | Si numéro = 2 alors
| | | | mois ← « Février »
| | | Sinon
| | | | Si numéro = 3 alors
| | | | | mois ← « Mars »
| | | | Sinon
| | | | | Si numéro = 4 alors
| | | | | | mois ← « Avril »
| | | | | Sinon
| | | | | | Si numéro = 5 alors
| | | | | | | mois ← « Mai »
| | | | | | Sinon
| | | | | | | Si numéro = 6 alors
| | | | | | | | mois ← « Juin »
| | | | | | | Sinon
| | | | | | | | Si numéro = 7 alors
| | | | | | | | | mois ← « Juillet »
| | | | | | | | Sinon
| | | | | | | | | Si numéro = 8 alors
| | | | | | | | | | mois ← « Août »
| | | | | | | | | Sinon
| | | | | | | | | | Si numéro = 9 alors
| | | | | | | | | | | mois ← « Septembre »
| | | | | | | | | | Sinon
| | | | | | | | | | | Si numéro = 10 alors
| | | | | | | | | | | | mois ← « Octobre »
| | | | | | | | | | | Sinon
| | | | | | | | | | | | Si numéro = 11 alors
| | | | | | | | | | | | | mois ← « Novembre »
| | | | | | | | | | | | Sinon
| | | | | | | | | | | | | Si numéro = 12 alors
| | | | | | | | | | | | | | mois ← « Decembre »
| | | | | | | | | | | | | Fsi
| | | | | | | | | | | | Fsi
| | | | | | | | | | | Fsi
| | | | | | | | | | Fsi
| | | | | | | | | Fsi
| | | | | | | | Fsi
| | | | | | | Fsi
| | | | | | Fsi
| | | | | Fsi
| | | | Fsi
| | | Fsi
| | Fsi
| Fsi
| Afficher (« Le mois est », mois, «.»)
Fin
7 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
D -- Structures de choix
Exemple :
Suivant nombre faire
| 0 : afficher (« Nul »)
| 1, 3 ,5 : afficher (« Impair »)
| 2, 4, 6 : afficher (« Pair »)
Finsuivant
Exemple : écrire une algorithme permettant en nous vous de demander de demander le numéro du mois en cours et
d'afficher le nom du mois correspondant.
Début
| Afficher (« Entrez le numéro »)
| Saisir (numéro)
| Suivant numéro faire
| | 1 : mois ← « janvier »
| | 2 : mois ← « février »
| | 3 : mois ← « mars »
| | 4 : mois ← « avril »
| | 5 : mois ← « mai »
| | 6 : mois ← « juin »
| | 7 : mois ← « juillet »
| | 8 : mois ← « août »
| | 9 : mois ← « septembre »
| | 10 : mois ← « octobre »
| | 11 : mois ← « novembre »
| | 12 : mois ← « décembre »
| Sinon
| | Afficher (« erreur programme »)
| Finsuivant
| Afficher (« mois »)
Fin
8 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Exemple : un robot conduit une voiture, ils peuvent exécuter trois actions, « s'arrêter », « ralentir », « passer » en
fonction de la couleur des feux qui sera saisi.
Programme robot v 1
Début
| Afficher (« saisir la couleur »)
| Saisir (couleur)
| Suivants couleur faire
| | vers : afficher (« passer »)
| | orange : afficher (« ralentir »)
| | rouge : afficher (« s'arrêter »)
| Sinon
| | Afficher (« veuillez saisir une couleur correcte »)
| Finsuivant
Fin
Cette structure est utilisée lorsque l'action peut être exécutée de zéro en n fois
instructions permettant la sortie de la boucle
Début
| nb ← 1
| Tant que nb <= 5 faire
| | nbcarre ← nb * nb
| | Afficher ( nb, «^2 = », nbcarre)
| | nb ← nb + 1
| FTQ
Fin
9 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Exemple : écrire un algorithme permettant d'afficher la longueur de chaque mot saisi. Nous souhaitons également
compter le nombre de mots saisis. L'utilisateur entre autant de mots qui le souhaitent
Programme Mot v 1
Début
| nbmot ← 0
| Tant que choix <> « N » Faire
| | Afficher (« Veuillez saisir un mot. »)
| | Saisir (mot)
| | lgmot ← LONGUEUR (mot)
| | lgmot ← nbmot + 1
| | Afficher (« Le mot », mot, « se compose », lgmot, « caractères. »)
| | Afficher (« Vous ne vous continuez O/N)
| | Saisir (choix)
| FTQ
| Afficher (« vous avez saisi », nbmot, « mots. »)
Fin
B -- L'instruction répéter
Répéter
| Action
Jusqu'à condition
La condition est testée après l'exécution de l'action définie. Sa structure peut être utilisée lorsque l'action peut être
exécutée 1 à n fois.
Début
| nb ← 1
| Répéter
| | Afficher ( nb, «^2 = », nb * nb)
| | nb ← nb + 1
| Jusqu’à nb = 6
Fin
10 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Exemple : écrire un algorithme permettant de calculer l'âge d'une personne à partir de son année de naissance.
Nous recommençons autant de fois que possible.
Programme age v 1
Début
| Répéter
| | Afficher (« Quel est l'année de naissance »)
| | Saisir (anné_naiss)
| | âge ← anné_naiss * anné_cours
| | Afficher (« La personne née en », anné_naiss, « à », âge, « ans. »)
| | Afficher (« Voulez vous continuez O/N)
| | Saisir (choix)
| Jusqu’à choix = « N » ou choix = « n »
Fin
Exemple : écrire un algorithme (2 versions) permettant de saisir un nombre compris entre un et 100.
Programme nombre v 1
Début
| Répéter
| | Afficher (« Veuillez saisir un nombre compris entre 1 et 100 : »)
| | Saisir (nbre)
| Jusqu’à nbre >= 1 et nbre <= 100
Fin
11 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Programme nombre v 2
Début
| Tant que nbre <= 1 ou nbre > 100 faire
| | Afficher (« Entrez un nombre entre un et 100 : »)
| | Saisir (nbre)
| FTQ
Fin
C -- L'instruction pour
Début
| Pour nbre De 1 A 5 Faire
| | nbcarre ← nb * nb
| | Afficher ( nb, «^2 = », nbcarre)
| Finpour
Fin
Programme calcul v 1
Début
| Pour nbre De 1 A 9 Pas de 2 Faire
| | résultat ← nbre * 9
| | Afficher (nbre, «* 9 = », résultat)
| Finpour
12 / 13 DAIGL Programmation
Chapitre 1 : Conception de base algorithme
Fin
Exemple : écrire un algorithme permettant d'afficher les tables de multiplication de 1 à 9 pour les 10 premiers
nombres entiers
Programme Table v 1
Début
| Pour table De 2 A 9 Faire
| | Pour nb De 1 A 10 Faire
| | | afficher (nb, « * », table, « = », nb * table)
| | Finpour
| Finpour
Fin
13 / 13 DAIGL Programmation
Chapitre 2 : Les tableaux
Les tableaux
I – Les tableaux
A - Définitions
C'est une structure de données linéaires qui permet de stocker des données de même type. Chacune des valeurs
est repérée par un indice indiquant la position de la donner dans le tableau.
Exemple : déclaration d'un tableau permettant de stocker les moyennes de types réels.
Moyennes
Indice 1 2 3 4 5 6 7 8 9 10
VAR i : entier
moyenne [i] contenu de la ième case du tableau à condition que i est une valeur comprise entre 1 et 10.
Exemple : écrire un algorithme permettant de saisir une saisie de 10 entiers dans un tableau.
Programme Tableau
Début
| Pour i de 1 à 10 faire
| | Afficher (« Donner la valeur. »)
| | Saisir (valeur [i])
| Fin pour
Fin
1 2 3 …………………………………………. 26
a b c …………………………………………. z
Début
| Pour i de 1 à 26 faire
| | Afficher (« Valeur. », valeur [i])
| Fin pour
Fin
Il arrive fréquemment qu'un utilisateur désire vérifier la présence d'un élément dans un tableau ou bien qu'il souhaite
connaître la place d'un élément dans un tableau.
Dans tous les cas, il faut considérer que le tableau peut ne pas contenir tous les éléments recherchés.
Exemple : écrire un algorithme permettant de rechercher dans un tableau contenant les 20 reçus au BTS, le nom
d'un étudiant saisie afin de déterminer s’il reçut ou recalés. Vous effectuerez la saisie du tableau préalable. On
suppose qu'il n'y a pas d'homonyme.
Début
| Pour i de 1 à 20 faire
| | Afficher (« Saisir un nom »)
| | saisir (étudiant [i])
| Fin pour
| Afficher (« Saisir un nom recherché : »)
| Saisir (nom)
| i←0
| Répéter
| | i←i+1
| Jusqu’à (nom = étudiant [i]) ou (i = 20)
| Si nom = étudiant [i] Alors
| | Afficher (« Reçues »)
| Sinon
| | Afficher (« Recalés »)
| FSI
Fin
2 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
Programme Recherche v 1.1
Début
| Pour i de 1 à 20 faire
| | Afficher (« Saisir un nom »)
| | saisir (étudiant [i])
| Fin pour
| Afficher (« Saisir un nom recherché : »)
| Saisir (nom)
| i←1
| Tant que (nom <> étudiant [i]) et (i < 20) Faire
| | i←i+1
| FTQ
| Si nom = étudiant [i] Alors
| | Afficher (« Reçues »)
| Sinon
| | Afficher (« Recalés »)
| FSI
Fin
Début
| Pour i de 1 à 20 faire
| | Afficher (« Saisir un nom »)
| | saisir (étudiant [i])
| Fin pour
| Afficher (« Saisir un nom recherché : »)
| Saisir (nom)
| i←1
| trouve ← Faux
| Répéter
| | Si nom = étudiant [i] alors
| | | trouve ← Vrai
| | FSI
| Jusqu’à (trouve) ou (i = 20)
| SI trouve alors
| | Afficher (« Reçus »)
| sinon
| | Afficher (« Recalés »)
| FSI
Fin
3 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
E - Suppression d'un élément dans un tableau
De toute façon nous devons décaler d'une case vers la gauche tous les éléments qui suivent l'élément à supprimer.
Exemple : à partir du tableau des étudiants au BTS, écrire un algorithme permettant de supprimer l'étudiant qui est
déplacé par erreur dans le tableau. On suppose que le tableau a été saisi. Le nom de l'étudiant à supprimer sera
saisi, on suppose qu'il n'y a pas d'homonyme.
Début
| Afficher (« Saisir le nom à supprimer : »)
| Saisir (nom)
| i←0
| Répéter
| | i←i+1
| Jusqu’à nom = étudiant [i]
| Pour cpt de i à 19 Faire
| | étudiant [cpt] ← étudiant [cpt + 1]
| Fin pour
| étudiant [20] ← « »
Fin
À tableau est ordonné lorsqu'il existe une relation d'ordre entre le contenu de ses différentes cases.
Nous parlons de :
o tri croissant si le contenu de la case d'indice i est inférieur ou égal au contenu de la case d'indice i + 1
o tri décroissants si le contenu de la case d'indice i est supérieur ou égal au contenu de la case d'indice i + 1
4 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
A - Le tri à bulle
Principe : Nous parcourons le tableau en comparant les éléments consécutifs. S'ils sont mal ordonnés, nous les
échangeons.
Nous recommençons jusqu'à ce qu'il n'y ait plus d'échange à effectuer.
5 18 14 4 26
5 18 14 4 26
5 14 18 4 26
5 14 4 18 26
5 14 4 18 26
5 14 4 18 26
5 4 14 18 26
5 4 14 18 26
5 4 14 18 26
4 5 14 18 26
4 5 14 18 26
4 5 14 18 26
4 5 14 18 26
4 5 14 18 26
4 5 14 18 26
4 5 14 18 26
5 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
Programme TRI_BULLE
Const n = 5
Var valeur TABLEAU [1..n] D’Entier
echange : booléen /*détermine si un échange de valeurs a été effectué*/
inter : réel
Début
| /* Saisie du tableau */
| i←1
| Pour i de 1 à n Faire
| | Afficher (« Donner un nombre »)
| | Saisir (valeur [i])
| Fin pour
| /* Tri du tableau */
| Répéter
| | échange ← Faux
| | Pour i de 1 à (n – 1) Faire
| | | si valeur [i] > valeur [i + 1] alors
| | | | échange ← Vrai
| | | | inter ← valeur [i]
| | | | valeur [i] ← valeur [i + 1]
| | | | valeur [i + 1] ← inter
| | | FSI
| | Fin pour
| Jusqu’à non échange
Fin
Exemple :
8 1 7 5 4
1 8 7 5 4
1 4 7 5 8
1 4 5 7 8
1 4 5 7 8
6 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
Programme Tri_min
Const n = 5
Var valeur TABLEAU [1..n] D’Entier
inter, j, indmin, i : réel
Début
| i←1
| Pour i de 1 à n Faire
| | Afficher (« Donner un nombre »)
| | Saisir (valeur [i])
| Fin pour
| Pour i de 1 à (n – 1) Faire
| | indmin ← i
| | Pour i de 1 à (n + 1) Faire
| | | Si valeur [j] < valeur [indmin] Alors
| | | | indmin ← j
| | | FSI
| | Fin pour
| | Si indmin <> i Alors
| | | inter ← valeur [i]
| | | valeur [i] ← valeur [indmin]
| | | valeur [indmin] ← inter
| | FSI
| Fin pour
Fin
Principe : Sur un tableau délimité par les indices borneinf et bornesup, ordonné de manière croissante, le principe
de recherche est le suivant :
• Effectuer une comparaison entre l'élément recherché et l'élément médian. Trois cas peuvent se présenter :
o élément à chercher = élément médian : arrêt du traitement.
o élément à chercher < élément médian : on modifie la borne supérieure de recherche dans le tableau
(bornesup ← indice médian - 1) car l'élément à chercher est obligatoirement (s'il existe) dans la partie gauche du
tableau.
o élément à chercher > élément médian : on modifie la borne inférieure de recherche dans le tableau (borneinf
← indice médian + 1) car l'élément à chercher est obligatoirement (s'il existe) dans la partie droite du tableau.
• la borne supérieure est devenue inférieure à la borne inférieure car si la valeur n'existe pas, le tableau a été réduit
à 0 case.
7 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
1 4 5 7 8
et l'élément à chercher = 7
1 4 5 7 8
borneinf median bornesup
1 4 5 7 8
borneinf bornesup
médian
élément à chercher = élément médian (7 = 7)
1 4 5 7 8
et l'élément à chercher = 3
1 4 5 7 8
Borneinf médian bornesup
1 4 5 7 8
borneinf bornesup
médian
1 4 5 7 8
borneinf
bornesup
médian
1 4 5 7 8
bornesup borneinf
8 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
Programme Dichotomie
Début
| /* Saisie d’un élément a rechercher */
| Afficher (« aucune valeur »)
| Saisir (élément)
| /* Recherche de l'élément */
| Tantque (element <> valeur [median]) et (borneinf < = bornesup) Faire
| | /* Comparaison */
| | Si (element < valeur[median]) alors
| | | bornesup ← (median – 1)
| | sinon
| | | borneinf ← (median + 1)
| | FSI
| | median ← (borneinf + bornesup) DIV 2
| FTQ
| /* Résultat de la recherche */
| Si (element = valeur[median]) alors
| | Afficher ( element, « trouvé à l’indice médian », median, « . »)
| sinon
| | Afficher ( « L’élément »,element, « n’est pas dans le tableau. »)
| FSI
FIN
L'opération de fusion de deux tableaux ordonnés consiste à classer les éléments de ces tableaux en les ordonnant
dans un troisième tableau.
Table 1 12 14 16 21 34 56 78 90 100
Table 2 5 10 12 13 25 67 78
Résultat 5 10 12 12 13 14 16 21 25 34 56 78 78 90 100
Programme Dichotomie
Const n1 = 9
n2 = 7
Début
| /* On suppose que table1 et table2 ont été saisies*/
| /* Initialisation des indices*/
| indtab1 ← 1
| indtab2 ← 1
9 / 10 DAIGL Programmation
Chapitre 2 : Les tableaux
| indfus ← 1
| /* Comparaison des valeurs dans les tableaux */
| Tantque (indtab1 < = n1) et (indtab2 < = n2) Faire
| | Si table1[indtab1] > table2[indtab2] alors
| | | tabfusion[indtab2] ← table2[indtab2]
| | | indtab2 ← indtab2 + 1
| | sinon
| | | Si (table2[indtab2] > table1[indtab1]) alors
| | | | tabfusion[indtab2] ← table1[indtab1]
| | | | indtab1 ← indtab1 + 1
| | | FSI
| | FSI
| | indfus ← indfus + 1
| FTQ
| Pour i de indtab1 à n1 Faire
| | tabfusion[indfus] ← table1[i]
| | indfus ← indfus + 1
| Fin pour
| Pour i de indtab2 à n2 Faire
| | tabfusion[indfus] ← table2[i]
| | indfus ← indfus + 1
| Fin pour
FIN
Chaque élément est repéré par deux indices indiquant la ligne et l'autre la colonne.
1 2 3 4 5
1 h j q i o
2 t k l m e
3 r d q q a
Programme Saisie
Début
| Pour i de 1 à 3 Faire
| | Pour j de 1 à 5 Faire
| | | Afficher (« Entrer une valeur : »)
| | | Saisir (valeur[i, j])
| | Finpour
| Finpour
Fin en
10 / 10 DAIGL Programmation
Chapitre 4 : Les enregistrements
Les enregistrements
Pb : Désire et afficher la moyenne de la note d’oral à et la note d’écrit obtenu au bac de français pour les élèves
d'une classe de première. Pour cela, on souhaite également mémoriser le nom et le prénom de chaque élève.
Comment mémoriser toutes ces informations afin de les manipuler ?
I – Définition
Un enregistrement est un type de données structurées, il sert à rassembler dans une même rupture des données de
types différents se rapportant à un même sujet.
II – Déclaration
Exemple :
TYPE eleve_enr : ENREGISTREMENT
nom, prenom : chaîne de caractéres
oral, écrit : réel
FIN ENREGISTREMENT
Remarque : eleve_enr n'est pas une variable mais un nouveau type au même titre que les types standard : réel,
entier.
III – Utilisation
3) Programme Élève
CONST nb =20
Début
| Pour i de 1 à nb Faire
| | Afficher (« Donner le nom, le prénom, et les deux notes de l’élève »)
| | Saisir (tabeleve[i].nom
| | Saisir (tabeleve[i].prenom)
| | Saisir (tabeleve[i].oral)
| | Saisir (tabeleve[i].écrit)
| Fin pour
| Pour i de 1 à nb Faire
| | moy ← (tabeleve[i].oral + tabeleve[i].écrit) / 2
| | Afficher (« La moyenne de l'élève », tabeleve[i].nom, « », tabeleve[i].prenom, « est de »,moy)
| Fin pour
FIN
Remarque 1 : un type enr peut contenir un champ de type enregistrement. Supposons que dont le type eleve_enr,
nous voulions sa date de naissance :
TYPE date : ENREGISTREMENT
jour, mois, année : entier
FIN ENREGISTREMENT
Remarque 2 : type enr peut contenir un champ de type tableau. Supposons que le type eleve_enr est caractérisé
par 6 notes :
TYPE eleve_enr : ENREGISTREMENT
nom, prenom : chaîne de caractéres
datenaiss : date
note : tableau [1 .. 6] de réel
FIN ENREGISTREMENT
Remarque 3 : les données contenues dans les enregistrements et les tableaux sont perdus des que l'on quitte le
programme dans lequel il est saisi. Solution : ou type de données, le fichier.
2/2 DAIGL Programmation