I‐ LES CONSTANTES ET LES VARIABLES
I.1‐ LES CONSTANTES
Une constante est un objet ayant une valeur fixe tout le long de l’exécution d’un algorithme ou
d’un programme. Elle est caractérisée par son ………………………… (un identificateur unique) et sa
…………….…………… (détermine implicitement le type de la constante).
En Algorithmique :
Tableau de Déclaration des Objets
Objets Type/Nature Rôle
Général Nom Constante = valeur de la constante Rôle
Annee Constante = 2010
G Constante = 9.81
Exemples
Auteur Constante = "Chebbi"
Existe Constante = Vrai
En Pascal :
• Syntaxe : CONST <nom_constante> = <valeur_constante> ;
• Exemples : CONST annee = 2010 ;
g = 9.81 ;
auteur = ‘Chebbi’ ;
existe = True ;
I.2‐ LES VARIABLES
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 :
Un ……………………. (identificateur unique)
Un ……………………. (nature de données)
Un ……………………. (valeur manipulée)
En Algorithmique :
T.D.O
Objets Type/Nature Rôle
Général Nom Type de la variable Rôle
Heure Entier Calcul du nombre d'heures
Exemples Moy Réel Calcul de la moyenne
Phrase Chaîne de caractères Saisie d'une phrase
En Pascal :
• Syntaxe : VAR <nom_variable> : type_variable ;
• Exemples : VAR Heure : Integer ;
Moy : Real ;
Phrase : String ;
Remarque :
Pour chaque constante et variable du programme, l'ordinateur réserve une partie de sa mémoire
(RAM), de taille adéquate au type de données.
Activité :
Les structures de données______________________# Prof : FENNI-S________________________Page 1/7
Le programme Pascal suivant comporte de nombreuses erreurs, trouver-les :
II‐ LES TYPES DE DONNEES STANDARDS
Le type d’une variable permet de savoir quelle quantité de mémoire sera utilisée, quelles valeurs
seront autorisées et quels opérateurs seront possibles sur cette variable.
II‐1 LES TYPES NUMERIQUES
II‐1.1 Le type Entier, désignant les valeurs des nombres entiers relatifs (sous-ensemble de Z ).
II‐3 Le type Caractère (CHAR, en Pascal)
Une variable de type caractère aura pour valeur un et un seul caractère encadré par deux
guillemets en algorithmique (deux apostrophes, en Pascal).
• Exemples : "A" "4" "e" "*" "[" etc.
Tous les caractères sont ordonnés selon leurs codes ASCII variant de 0 à 255 (voir Annexe à la
fin du livre scolaire).
La mémoire requise pour ce type est un octet.
• Opérateurs sur les caractères : Toutes les opérateurs relationnels
(<, <=, >, >=, =, ≠, Dans)
Les fonctions prédéfinies sur les caractères (voir Annexe I)
Activité : (voir page 17 du livre scolaire)
II‐4 Le type Chaîne de caractères (STRING, en Pascal)
Une chaîne de caractères est une suite de n caractères (0 ≤ n ≤ 255), encadrée par deux
guillemets en algorithmique (deux apostrophes, en Pascal).
Les variables chaînes de caractères sont définies par une déclaration pouvant indiquer le nombre
maximum de ses caractères.
• Exemples :
En Algorithmique :
En Pascal :
VAR Nom : String [20] ; Réservation de 21 octets dans la mémoire.
Adresse : String ; Réservation de 256 octets dans la mémoire.
c) Indexation :
Les caractères d'une chaîne sont indicés en utilisant la notation CH[i] où 1 ≤ i ≤ long (CH).
Nom Å "Mabrouk" nom [1] donne "M" nom [5] donne ……………
Nom [3] Å "t" nom devient ……………………….
Activité :
Dans le tableau ci-dessous, donner le résultat et le type correspondant à chacune des
expressions.
III‐ LES EXPRESSIONS
Une expression représente une succession de calculs ; elle peut faire intervenir des constantes,
des variables, des fonctions et des opérateurs.
Les structures de données______________________# Prof : FENNI-S________________________Page 4/7
On distingue deux types d'expression :
• les expressions arithmétiques donnant une valeur numérique
• les expressions logiques donnant une valeur booléenne
Exemples :
(5 > 3) est une expression logique, sa valeur est .................
(6*3) MOD 5 est une expression arithmétique, sa valeur est ...............
En algorithmique En Pascal
1) les parenthèses (…) (…)
2) les opérateurs unaires - (l'opposé) NON - NOT
3) les opérateurs multiplicatifs * / DIV MOD ET * / DIV MOD AND
4) les opérateurs additifs + - OU OUex + - OR XOR
5) les opérateurs relationnels = < <= > >= ≠ DANS = < <= > >= <> IN
Activité :
Evaluer les expressions suivantes :
• 8 MOD 3 DIV 2 = ………….……….
• 5 + 2 * 4 MOD 3 – 6 DIV 2 * 3 = ……………..……
• (5 > 2) ET (3 ≠ 3) OU (5 MOD 4) = 6) = ……………………
• ("D" < "A") ET (ABS(-1) > 0) = ……………………
IV‐ LE TYPE SCALAIRE ENUMERE ET LE TYPE INTERVALLE
Outre les types standard, nous pouvons définir de nouveaux types appelés souvent types utilisateur.
IV‐1 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 définis par l'utilisateur.
• Exemple :
Couleur = (Rouge, Bleu, Vert)
Marque = (Renault, Citroen, Peugeot, Ford, Toyota)
• Déclaration :
En algorithmique :
Tableau de déclaration des nouveaux types
Type
Nom_du_type = (valeur1, valeur2, valeur3, …)
En pascal :
TYPE Nom_du_type = (valeur1, valeur2, valeur3, …) ;
Activité : (voir page 31 du livre scolaire)
IV‐2 LE TYPE INTERVALLE
Ce type est défini comme un intervalle de valeurs appartenant à l'un des types suivants :
− Entier
− Caractère
− Type énuméré préalablement défini
• Déclaration :
En algorithmique :
Tableau de déclaration des nouveaux types
Type
Nom_du_type = borne inférieur . . borne supérieur
En pascal :
TYPE Nom_du_type = borne inférieur . . borne supérieur ;
Exemples :
Tableau de déclaration des nouveaux types
Type
Chiffre = 0..9
Minuscule = 'a'..'z'
Jour = (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche)
Jour_travail = lundi..vendredi
Activité : (voir page 33 du livre scolaire)
V‐ LE S TABLEAUX A UNE DIMENSION (VECTEURS)
Un tableau est une structure de données permettant de ranger un nombre fini d'éléments de même
type.
Un tableau est caractérisé par :
• Un …………………………….. servant d'identificateur
• Une ……………………………
Les structures de données______________________# Prof : FENNI-S________________________Page 6/7
• Le ……………………….……. des éléments qu'il contient
Première formulation
EN ALGORITHMIQUE EN PASCAL
T.D.O. VAR
Objet Type/Nature Rôle Ident_tableau : ARRAY [Binf..Bsup] OF Type_éléments ;
Ident_tableau Tableau de taille et de
type_éléments
Exemple :
T.D.O
Objet Type/Nature Rôle
MOY Tableau de 30 Réels Contenir les moyennes de 30 élèves
Deuxième formulation
EN ALGORITHMIQUE EN PASCAL
L'accès à un élément du tableau est un accès direct. Pour accéder au ième élément du tableau, il
suffit de donner l'identificateur du tableau et l'indice i (borne inférieure ≤ i ≤ borne supérieure).
Exemple 1 :
Soit la déclaration suivante en Pascal : VAR MOY : ARRAY [1..5] OF REAL ;
Pour une telle déclaration, on peut prévoir le tableau suivant :
MOY[2] = 10.25
MOY[5] = 9.50 MOY 15.50 10.25 14.75 18.75 9.50
1 2 3 4 5
Exemple 2 :
Soit T un tableau de 5 chaînes de caractères T ICTB DOUES ADMISE VRAI PREMIER
T [3] = "ADMISE" 1 2 3 4 5
T [3] [2] (ou T [3,2]) = "D"
T [5] [4] = "M"
Dans le cas générale, T [i] [p] désigne le pième caractère du ième chaîne de T.