3
Page | 1 Bac Scientifiques Les Structures De Données Infoslpm.e-monsite.com LES STRUCTURES DE DONNÉES Résumé De Cours & Remarques Les Constantes et Les variables Une constante est une donnée dont la valeur reste fixe durant l’exécution d’un programme, Il existe 5 types de constantes : entière, à virgule flottante, de type caractère, de type chaîne et de type booléen (vrai, faux). Une constante est caractérisée par : Son identificateur (nom) ; Sa valeur. Exemples (en Pascal) CONST ok= true ; a= 56 ; nom = 'Bac'+'2013' ; s : INTEGER = ORD (LENGTH (‘BAC2013 ‘)) ; Une variable est un objet dont la valeur peut être modifiée, au fil de déroulement d’un algorithme ou d’un programme. Elle est caractérisée par : Son Identificateur (nom) ; Son Type Son Contenu. Lorsqu'on déclare une variable, on réserve en mémoire vive (RAM) un espace mémoire propre à la variable. Un identificateur doit respecter les règles suivantes : Il ne doit pas contenir de caractères accentués, ni d'espace, ni de points et ni les caractères suivants : @, $, &, #, +, -, *, / ; Il doit être composé que de lettres, de chiffres et du caractère de soulignement (_) (ne peut pas commencer par un chiffre) Il doit impérativement être différent de ceux d'unités utilisées, de mots réserves du langage Pascal et ne doivent pas exèdre 127 signes (1 lettre au minimum) L’utilisation de minuscules et de majuscules sont permise car Pascal ne fait pas de différence entre minuscules et majuscules N.B Parmi les objectifs de ce chapitre : La déclaration (en Algo, en Pascal) des constantes et des variables (T.D.O) Les Types de données Le type ENTIER : Désigne les valeurs des nombres entiers relatifs. (sous ensemble de Z)Turbo pascal fournit cinq types entiers prédéfinis. Chacun d’eux concerne un sous ensemble particulier des nombres entiers : INTEGER, LONGINT et SHORTINT (entier, entier long et entier court) : Entier signé. WORD et BYTE (mot et octet) : Entier non signé. Les opérateurs relationnels (logiques) : <, >, ≤, ≥, ≠, =, DANS. (≠, DANS en Turbo Pascal<>, IN) Les opérateurs arithmétiques : *, DIV, MOD, +,-. (DIV /MOD : quotient/reste) Le type Réel(REAL) : Désigne les valeurs des nombres réels (sous ensemble de R), le réel est composé d’une partie entière et d’une partie décimale. Exemple 1.5E+03 ( E : 10 à la puissance ). Les opérateurs relationnels (logiques) : <, >, ≤, ≥, ≠, =. Les opérateurs arithmétiques : +,-,*, / Les Fonctions Standards (voir Annexe I) Le type CARACTERE(CHAR) : Désigne tous les caractères alphanumériques imprimables de l’alphabet latin ainsi que les caractères spéciaux non imprimables ayant des significations

Les Structures de données

Embed Size (px)

DESCRIPTION

résume du cours

Citation preview

Page | 1

Bac Scientifiques

Les Structures

De Données Infoslpm.e-monsite.com

Pour … Répéter … Tant

que

Pour … Répéter … Tant

que

LES STRUCTURES DE DONNÉES

Résumé De Cours & Remarques

Les Constantes et Les variables

Une constante est une donnée dont la valeur reste fixe durant l’exécution d’un programme, Il existe 5 types de constantes : entière, à virgule flottante, de type caractère, de type chaîne et

de type booléen (vrai, faux). Une constante est caractérisée par :

Son identificateur (nom) ; Sa valeur.

Exemples (en Pascal) CONST ok= true ; a= 56 ; nom = 'Bac'+'2013' ; s : INTEGER = ORD (LENGTH (‘BAC2013 ‘)) ;

Une variable est un objet dont la valeur peut être modifiée, au fil de déroulement d’un

algorithme ou d’un programme. Elle est caractérisée par :

Son Identificateur (nom) ; Son Type Son Contenu.

Lorsqu'on déclare une variable, on réserve en mémoire vive (RAM) un espace mémoire propre à la variable.

Un identificateur doit respecter les règles suivantes :

Il ne doit pas contenir de caractères accentués, ni d'espace, ni de points et ni les caractères suivants : @, $, &, #, +, -, *, / ; Il doit être composé que de lettres, de chiffres et du caractère de soulignement (_) (ne peut pas commencer par un chiffre) Il doit impérativement être différent de ceux d'unités utilisées, de mots réserves

du langage Pascal et ne doivent pas exèdre 127 signes (1 lettre au minimum)

L’utilisation de minuscules et de majuscules sont permise car Pascal ne fait pas de différence entre minuscules et majuscules

N.B Parmi les objectifs de ce chapitre : La déclaration (en Algo, en Pascal) des constantes et des variables (T.D.O)

Les Types de données Le type ENTIER : Désigne les valeurs des nombres entiers relatifs. (sous ensemble de

Z)Turbo pascal fournit cinq types entiers prédéfinis. Chacun d’eux concerne un sous

ensemble particulier des nombres entiers : INTEGER, LONGINT et SHORTINT (entier, entier

long et entier court) : Entier signé. WORD et BYTE (mot et octet) : Entier non signé.

Les opérateurs relationnels (logiques) : <, >, ≤, ≥, ≠, =, DANS. (≠, DANS en Turbo Pascal<>, IN) Les opérateurs arithmétiques : *, DIV, MOD, +,-. (DIV /MOD : quotient/reste)

Le type Réel(REAL) : Désigne les valeurs des nombres réels (sous ensemble de R), le réel

est composé d’une partie entière et d’une partie décimale. Exemple 1.5E+03 ( E : 10 à la

puissance ).

Les opérateurs relationnels (logiques) : <, >, ≤, ≥, ≠, =. Les opérateurs arithmétiques : +,-,*, /

Les Fonctions Standards (voir Annexe I) Le type CARACTERE(CHAR) : Désigne tous les caractères alphanumériques imprimables de

l’alphabet latin ainsi que les caractères spéciaux non imprimables ayant des significations

Page | 2

Bac Scientifiques

Les Structures

De Données Infoslpm.e-monsite.com

Pour … Répéter … Tant

que

Pour … Répéter … Tant

que

particulières tel que : le retour chariot, l’Echappe (Escape), le Bip sonore, etc. Tous ces

caractères sont ordonnés selon leur code ASCII. Les Fonction Standards sont :

ORD(c) : Renvoie le code ASCII du caractère C, exemple ORD (‘’a’’) =97 CHR(x) : Renvoie le caractère dont le code ASCII est x, exemple CHR(97)=’’a’’ PRED (c) : Renvoie le prédécesseur de c, exemple PRED (‘’C’’)=’’D’’. SUCC(c) : Renvoie le successeur de c, exemple SUCC (‘’A’’)=’’B’’. MAJUS(c) (UPCASE) : Convertit le caractère c en majuscule si c’est possible.

Le type CHAINE DE CARACTERE(STRING) : Une chaîne de caractères est une entité composée d’une suite de n caractères. N étant compris entre 0 et 255.Si n est nulle, on dit que la chaîne est vide. Exemple : "20 mars 1956". ; "" : Chaîne vide

Les valeurs chaîne de caractères sont définies entre guillemets dans la spécification et l’algorithme. Ces guillemets sont remplacés par des apostrophes.

Si une apostrophe doit figurer dans une chaîne de caractères dans un programme, il faut la doubler ('l''élève').

On peut accéder à l’iéme caractère d’une chaîne CH en utilisant la notation CH [i] avec 1≤i≤long (ch). Long (ch) : désigne la longueur de la chaîne. CH"FAMILLE" CH [2] VAUT "A"CH [3] VAUT "M".

La comparaison de deux ou plusieurs chaînes de caractères est basée sur les codes ASCII. En effet la comparaison se fait caractère par caractère en partant des premiers. Exemple : CH1"FAMILLE" CH2"FAMILY" CH1< CH2.

Les Fonctions et les Procédures prédéfinies (voir Annexe II) Le type BOOLEEN(BOOLEAN) : Le type booléen comporte deux valeurs vrai (true en turbo

pascal) et faux (false en turbo pascal). Les operateurs logiques sont NON, ET, OU et OU ex (NOT, AND, OR, XOR en Pascal).

Ordre de priorité NON > ET > OU > OUex, avec > désigne "Plus prioritaire". La Table de vérité (voir Annexe III)

Les fonctions prédéfinies sont : SUCC, PRED, ORD, ODD…

Le type TABLEAU (ARRAY EN PASCAL) : Le tableau unidimensionnel ou vecteur est une structure de données permettant de ranger un nombre fini d’élément de même type. Un vecteur est caractérisé par : Un nom servant son identification. Une taille. Le type des éléments qu’il contient.

L'accès à un élément du tableau est un accès direct. Pour accéder à l’ième élément du tableau, il suffit de donner l'identificateur du tableau et l'indice (i). Cet indice doit être dans l'intervalle [Borne_inf.. Borne_sup].

L’indice d'un élément doit être de type scalaire (Entier, Caractère, énuméré).

La taille d'un tableau est égale à: Taille = (Borne_sup - Borne_inf) + 1

Les opérations possibles sur un élément du tableau sont les mêmes que celles définies sur une variable de même type.

On peut déclarer un tableau comme étant un nouveau type. Types utilisateurs

LE TYPE SCALAIRE ENUMERE : Le type scalaire par énumération définit un ensemble ordonné et fini de valeurs désignées par des identificateurs : ANNEE_SCOLAIRE= (septembre, octobre, novembre, décembre, janvier, février, mars, avril, mai, juin)

Les fonctions prédéfinies sont : ORD, SUCC, PRED. PRED (septembre) n'existe pas et SUCC (juin) n'existe pas non plus et peuvent provoquer des erreurs, ORD (septembre)=0.

Les valeurs d’un type scalaire énumère ne doivent pas appartenir à un type de base du Pascal.

Le type intervalle La définition d'un intervalle est décrite par la donnée de deux constantes représentant respectivement la "Borne Inférieure" et la "Borne Supérieure" appartenant à un type scalaire discret ordonné et telle que Borne Inférieure < Borne Supérieure.

Une variable d'un type intervalle possède toutes les propriétés du type de base dont l'intervalle est issu. Toutefois, sa valeur doit être comprise au sens large entre les bornes de l'intervalle.

Page | 3

Bac Scientifiques

Les Structures

De Données Infoslpm.e-monsite.com

Pour … Répéter … Tant

que

Pour … Répéter … Tant

que

Les Structures Simples

L’affectation : Cette action permet de ranger une nouvelle valeur dans une variable Syntaxe Identificateur var ← <expression>

Expression peut être : • Une variable • Une constante • Une expression arithmétique • Une expression logique

Une constante ne peut jamais figurer à gauche d’une affectation. Après une affectation, l’ancien contenu est perdu pour être substitué par le nouveau

contenu. Une action d’affectation doit se faire entre deux types compatibles. Les expressions arithmétiques <exp-arith> op_arith <exp-arith>

Op_arith peut être ‘+’, ‘-‘, ‘/’ , ‘*’ , ‘MOD’ Ou ’DIV’ L’ordre de priorité des opérateurs arithmétiques :

- signe négatif ( ) parenthèses ^ puissance * et / multiplication et division + et – addition et soustraction

Les expressions logiques Les expressions logiques admettent Vrai ou Faux comme résultat

Elles peuvent utiliser des opérateurs relationnels ( = , ≠, <,<=, >, >=) ou des opérateurs logiques (NON, ET, OU, OUEX)

L’ordre de priorité est : NON ET OU , OUEX

Instruction de lecture ou d’entrée Elle permet d’affecter, à une variable, une donnée introduite) partir d’une périphérique d’entrée (clavier).

Instruction d’écriture ou de sortie Elle permet d’afficher des résultats sur un périphérique de sortie (écran). Ce résultat peut être : • Une chaîne de caractères (caractère) délimitée par des ‘’ ‘’ • La valeur d’une variable dont le nom est spécifié • La valeur d’une expression

L’ordinateur évalue tout d’abord l’expression puis affiche le résultat obtenu Formatage d’affichage : (x15) (r15.25) (ch ‘‘bac’’)

write(x :5) ==== > - - -15 write(x :1) ===== > 15 write( r) ======> _1.5250000000E+01 write(r :8) =====> _1.5E+01 write(r :8 :2) ====> _ _ _15.25 write(r :8 :3) =====> _ _15.250