1. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
Les structures de données
1- Leçon 1 : Les variables et les types
standards de données
I- Les constantes et les variables
Activité 1
On se propose de calculer l’allongement L d’un ressort de raideur K auquel est accrochée une masse m.
Sachant que : m*g = K*L avec g = 9,8.
1) Analyser ce problème.
2) Déduire l’algorithme correspondant.
3) Traduire la solution en Pascal et l’exécuter pour m = 150 et K = 10.
Solution
Spécification
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
……………………………………………………………………………………………………………….
Analyse
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
……………………………………………………………………………………
…………………………………………………………………………………….
Tableau de déclaration des objets utilisés
Objet Nature/type Rôle
………… ……………….. ……………………………………………………
………… ……………….. ……………………………………………………
………… ……………….. ……………………………………………………
………… ……………….. …………………………………………………….
Prof: Mme HNANA Inès Page 1
4 MATH & 4 Sc Tech
2. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
Algorithme Traduction Pascal
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ………………………………………………………
……………………………………………………… ……………………………………………………….
1- Les constantes
a- Définition
Une constante est un objet ayant une valeur …….. tout le long de l’exécution du
Une constante est un objet ayant une valeur …….. tout le long de l’exécution du
programme. Elle est initialisée par le ……………..
programme. Elle est initialisée par le ……………..
Une constante est caractérisée par ::
Une constante est caractérisée par
…………………………
…………………………
………………………
………………………
b- Déclaration
- Déclaration au niveau de l'analyse
Objet Nature/ type Rôle
……………. ……………………………………………………… Rôle
- Déclaration en Pascal
CONST
……………………………………………………………………………………………………….
2- Les variables
a- Définition
On appelle variable tout objet pouvant prendre ………………. valeurs au moment
On appelle variable tout objet pouvant prendre ………………. valeurs au moment
de son exécution par le programme.
de son exécution par le programme.
Une variable est caractérisée par ::
Une variable est caractérisée par
…………………………………..
…………………………………..
Prof: Mme HNANA Inès Page 2
………………………………..
……………………………….. 4 MATH & 4 Sc Tech
3. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
b- Déclaration
- Déclaration au niveau de l'analyse
Objet Nature/ type Rôle
……………. …………………. Rôle joué par la variable dans le programme
- Déclaration en Pascal
VAR
……………………………………
II- Les types de données
1- Le type entier
Activité 2
1- Quelles sont les valeurs possibles qu’on peut accorder à une variable de type entier ?
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
2- Quelles sont les opérateurs arithmétiques qu’on peut appliquer sur les entiers ?
………………………………………………………………………………………………………………
……….. …………………………………………………………………………………………………….
3- Quelles sont les opérateurs de comparaison (relationnels) qu’on peut appliquer sur les entiers ?
.......................................................................................................................................................................
4- Donner les résultats des instructions suivantes :
- 17 DIV 3 = ………
- 17 MOD 3 = ……….
- ((58 DIV 7) MOD 2 + 3 = ……….
- (49 MOD 17) DIV (4* 5) = ………
Prof: Mme HNANA Inès Page 3
4 MATH & 4 Sc Tech
4. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
a- Déclaration
- Au niveau de l’analyse
Objet Nature/ type Rôle
……………… ………………….. Rôle
.
- Au niveau de Pascal
VAR
……………………………………………………………………………………………………
b- Quelques sous types du type entier
Voir remarque page 11
Remarques
Quand le résultat calculé dépasse les bornes de l’intervalle choisi, on va avoir un dépassement de
capacité ce qui entraine un résultat erroné.
Il est conseillé d’utiliser le type convenable et d’éviter de faire appel tout le temps au type entier.
2- Le type réel
Activité 3
1) Quel est le domaine des valeurs de type réel ?
………………………………………………………………………………………………………………..
2) Quels sont les opérateurs arithmétiques qu’on peut appliquer sur les réels ?
……………………………………………………………………………………………………………
3) Quels sont les opérateurs de comparaison (relationnels) qu’on peut appliquer sur les réels ?
…………………………………………………………………………………………………………..
a- Déclaration
- Au niveau de l’analyse
Objet Nature/ type Rôle
………………. ……………………………..…… Rôle
…..
Prof: Mme HNANA Inès Page 4
4 MATH & 4 Sc Tech
5. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
- Au niveau de Pascal
VAR
………………………………….
b- Les fonctions arithmétiques standards
Voir tableau page 13
Activité 4
Donner en Pascal l’équivalent de chacune des expressions arithmétiques suivantes :
b)
a)
Solution
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
Remarque
Les nombres à virgule flottante sont appelés ainsi parce qu’il est possible de les écrire en
déplaçant le point à volonté et en utilisant une puissance appropriée dans la base choisie.
Exemple :
123,45=1234,5*10-1 =12345 * 10 -2 =0,12345 * 103= 0,12345E+3
3- Le type booléen
Activité 5
1) Quelles sont les valeurs du type booléen ?
………………………………………………………………………………………………………………..
2) Quels sont les opérateurs logiques qu’on peut appliquer sur les booléens ?
………………………………………………………………………………………………………………
……………………………………………………………………………………………………………...
3) Compléter le tableau suivant pour donner les différentes combinaisons possibles de X avec Y en
utilisant les opérateurs logiques :
Valeur de X Valeur de Y
Prof: Mme HNANA Inès Page 5
4 MATH & 4 Sc Tech
6. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
4) Sachant que a= 4, b= 5, c= 1 et d= 0, évaluer les expressions logiques suivantes :
- Non ((a <> b²) OU (a * c < d))
- (a < b) ET (c >= d)
…………………………………………………
……………………………………………………
…………………………………………………
……………………………………………………
………………………………………………
……………………………………………………
- Non (a < b) OU (c <> b)
……………………………………………………
……………………………………………………
……………………………………………………
a- Déclaration
- Au niveau de l'analyse
Objet Nature/ type Rôle
…………….. ……………………….…………… Rôle
………..
- Au niveau de Pascal
VAR
…………………………………………………………………………………………..…….
b- Priorité des opérateurs
Opérateur Priorité Remarque
( ) 1 Expression entre parenthèses
Not 2
*, /, DIV, MOD, AND 3 Ont même priorité
+,-,OR, XOR 4 Ont même priorité
=,<,>,<=,>=,<> 5 Ont même priorité
IN 6
Remarque :
Si deux opérateurs, ayant la même priorité, se succèdent le calcul se fera de gauche à droite.
4- Le type caractère
Prof: Mme HNANA Inès Page 6
4 MATH & 4 Sc Tech
7. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
Une variable de type caractère contient un et un seul caractère de taille un octet. Elle peut être :
- ………………………………………………………………………………………..
- ………………………………………………………………………………………..
- …………………………………………………………….………………………….
- ………………………………………………………………………………………..
- ………………………………………………………………………………………..
A chaque caractère correspond un code appelé code …….…….. qui est un entier varie de 0 à 255(voir
Annexe).
Activité 7
1) Quels sont les opérateurs qu’on peut appliquer sur une variable de type caractère ?
……………………………………………………………………………………………………….. ……..
2) Terminer le tableau suivant pour définir les fonctions prédéfinies appliquées sur les caractères.
Nom Pascal Rôle Exemples
……………………………………………….. Ord("A") vaut …...
…………… ……………….
……………………………………………….. Ord("a") vaut …….
……………………………………………….. Chr(68) vaut ……
…………… ……………….
……………………………………………….. Chr(120) vaut ……
……………………………………………….. Succ("g") vaut ….
…………… ……………….
……………………………………………….. Succ ("3") vaut …
……………………………………………….. Pred("B") vaut …..
…………… ……………….
……………………………………………….. Pred("8") vaut …..
……………………………………………….. Majus("a") vaut ….
…………… ……………….
……………………………………………….. Majus("A") vaut …
3) Donner la différence entre les écritures suivantes :
- Entre A et "A" et entre 8 et "8"
………………………………………………………………………………………………………………
……………………………………………………………………………………………………………….
a- Déclaration
- Au niveau de l’analyse
Objet Nature/ type Rôle
…………………… …………………………….. Rôle
. ……..
Prof: Mme HNANA Inès Page 7
4 MATH & 4 Sc Tech
8. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
- Au niveau de Pascal
VAR
………………………………………………………………………………………………….
5- Le type chaine de caractères
Activité 8
1) De quoi est-elle formée une chaine de caractères ?
…………………………………………………………………………………………………………… …
……………………………………………………………………………………………………………….
2) Elaborer un tableau de déclaration des objets où vous définirez une chaine prénom de 10
caractères, une chaine nom pouvant contenir jusqu’à 255 caractères et une chaine adresse de 25
caractères.
……………………………………………………………..
Objet Nature /type Rôle
…………………. ……………………. ………………………………………………………………..
…………………. . ………………………………………………………………..
…………………. ……………………. ……………………………………………………………….
…………………….
3) Déclarer ces objets en Pascal.
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
4) Comment peut-on accéder à un caractère de la chaine ?
…………………………………………………………………………………………………………… …
………………………………………………………………………………………………………………
………………………………………………………………………………………………………………
Prof: Mme HNANA Inès Page 8
4 MATH & 4 Sc Tech
9. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
Prof: Mme HNANA Inès Page 9
4 MATH & 4 Sc Tech
10. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
2- Leçon 2 : Le type sca laire énuméré et
le type intervalle
Prof: Mme HNANA Inès Page 10
4 MATH & 4 Sc Tech
11. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
I- Le type scalaire énuméré
Activité 1
1) Donner la déclaration du type énuméré suivant :
- SEMAINE qui permet d’identifier les jours de la semaine
Au niveau de l’analyse :
…………………………………………………………..
……………..
………………………………………………………………………………………………………………………..
Au niveau de Pascal
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
2) L’affectation suivante est-elle correcte sachant que jour est une variable de type SEMAINE ?
Jour Mardi
……………………………………………………………………………………………………………………
3) Compléter le tableau suivant :
Instruction Résultat
N Ord(Mercredi) ………………………….…
Jour Succ(Lundi) …………………….……..
Jour Pred(Vendredi) …………………….……..
Jour Pred(Dimanche) ………………….……..
Jour Succ(Samedi) ………………….……..
a- Définition
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
………………………
………………………
b- Déclaration d’une variable de type scalaire
- Au niveau de l’analyse
Tableau de déclaration ………………………………….
Prof: Mme HNANA Inès Page 11
4 MATH & 4 Sc Tech
12. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
……………….
…………………………………………………………………………………………………..
Tableau de déclaration ……………………………….
Objet Nature/ type Rôle
……………… ………………….. Rôle
.
- Au niveau de Pascal
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
II- Le type intervalle
Activité 2
1) Déclarer une variable entière qui définit le rang d’un mois donnée.
Tableau de déclaration ……………………………….
Objet Nature/ type Rôle
……………… ………………….. Rôle
.
Constatation
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………….
Au niveau de l’analyse :
Tableau de déclaration ………………………………….
……………..
…………………………………………………………………………………………………..
Tableau de déclaration ……………………………….
Objet Nature/ type Rôle
……………… ………………….. Rôle
.
Au niveau de Pascal :
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………….
Déclaration d’une variable de type intervalle
Prof: Mme HNANA Inès Page 12
4 MATH & 4 Sc Tech
13. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
- Au niveau de l’analyse
Tableau de déclaration ………………………………….
……………….
…………………………………………………………………………………………………..
Tableau de déclaration ……………………………….
Objet Nature/ type Rôle
……………… ………………….. Rôle
.
- Au niveau de Pascal
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
Activité 3
En utilisant le type intervalle ou le type scalaire énuméré, donner une déclaration en Pascal des objets
suivants:
- Un type Taille contenant les identificateurs suivants: tresgrand, grand, assezgrant, moyen, petit et trespetit.
- Un type Longueur dont les valeurs sont comprises entre 90 et 200.
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………
3- Leçon 3 : Les tableaux à une dimension
Activité 1
1) Qu’est ce qu’une structure tableau ?
2) Pourquoi a-t-on recours à cette structure ?
3) Comment déclarer un tableau destiné à contenir les moyennes d’un groupe de 10 élèves ?
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
Prof: Mme HNANA Inès Page 13
4 MATH & 4 Sc Tech
14. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………
a- Définition
Un tableau est une structure de données permettant de ……………. un nombre fini d’éléments de
…………. type(entier, réel, booléen, caractère, chaîne de caractères).
En mémoire, un tableau est représenté par une succession de ................. ………………….. Chaque
case est repérée par un …………… (rang ou position dans un tableau).
Il faut donc définir :
Le ................... d’élément ;
Le ............................................. d’éléments dans le tableau ;
La .......................... du premier rang.
Exemple :
MOYENNE
10.5 20 15.5 11 17
1 2 3 4 5
NOM
« Ali » « Sahar » « Mouna » « Lobna » « Mahmoud »
1 2 3 4 5
b- Déclaration :
ère
1 méthode :
-Au niveau de l’analyse :
Tableau de déclaration des objets
Objet Nature / type Rôle
………………………………. Tableau de ……………….. et de Rôle
. ………….… élément
-Au niveau du langage Turbo Pascal :
…………..
……………………………..…………………………………………………………
Exemples:
……………………………………………………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………........................................................
Remarques :
- On peut accéder en lecture et en écriture à l'ième élément du tableau en utilisant la notation
…………………………………
- Le nombre d’élément d’un tableau est égale au .............................................................................
Prof: Mme HNANA Inès Page 14
4 MATH & 4 Sc Tech
15. Chapitre 1: Les structures de données Lycée : Farhat Hached KERKENNAH
- L’indice peut être de type ……………… ou de type …………………………...
Exemple : D’après les tableaux définis précédemment MOYENNE et NOM donner :
MOYENNE [1] ................................
NOM[2] ................................
MOYENNE [2] ................................
NOM[5] ...............................
2ème méthode : Il est possible de déclarer le type d’un tableau :
-Au niveau de l’analyse :
Tableau de déclaration des objets utilisés
Tableau de ……………………..…………………
Objet Nature /Type Rôle
Types
…………………………………………….…………………………………………………. ……… ………
- Au niveau du langage Turbo Pascal :
…………..
……………………………..…………………………………………………………
……………
……………………………………….
Activité 2
1- Soit V et W deux tableaux d’entiers, de types respectifs T1 et T2 et de tailles respectives 4 et 3.
2- Soit la séquence d’affectations suivantes :
- V[1] 300
- V[2] 50
- W[1] V[1] + V[2] * 2
- V[3] W[1] DIV 3
- W[2] W[1] MOD V[1]
- W[3] V[2] *2+2
- V[4] (V[2] DIV 4 ) MOD 2
- V[8] V[4]
Questions
1) Déclarer les deux tableaux V et W
2) Trouver les erreurs d’affectation dans la séquence précédente.
3) Quel est le contenu de chaque élément des deux tableaux V et W.
Prof: Mme HNANA Inès Page 15
4 MATH & 4 Sc Tech