Activité 1 Etablir une analyse et déduire l’algorithme d’un programme intitulé Cercle permettant de calculer et d’afficher le périmètre P et la surface S d’un Cercle de rayon R donné.
I.1. Les constantes
A. Définition : Elle est caractérisée par un NOM et une VALEUR B. Déclaration d’une constante en Turbo Pascal : Const Identificateur_Constante = Valeur_Constante; Exemple : Const Pi = 3.14;
I.2. Les Variables
A. Définition : Elle est caractérisée par son NOM son TYPE sa VALEUR B. Déclaration d’une Variable en Turbo Pascal : Var Identificateur_Variable : Type_Variable; Exemple : Var R : Integer; REMARQUES : Il n’y a pas de différence entre la variable A et la variable a.
II. LES TYPES DE DONNÉES
II.1. Les types Numériques A. Le type Entier (Integer) : Un sous ensemble de Z il peut être POSITIF ou NEGATIF Domaine des valeurs du type Entier (voir livre Page 11). REMARQUES : On supposera que le type Entier, employé en algorithmique lui correspondra le type Integer en turbo Pascal (il est conseillé d’employer lors de la traduction de l’algorithme le type Entier convenable) Exemple : N 8 ! (8 ! = 40320) N ne doit pas être de type REEL mais elle peut être de typeENTIER Les opérateurs arithmétiques sur les entiers : (+ ; - ; *) Opérateur Rôle Type résultat Exemple Résultat / Division réelle Réel 11 / 2 5,5 10 / 2 5,0 DIV Division entière entier 11 DIV 2 5 MOD Reste de la division entière entier 11 MOD 2 1 DANS Appartenance à un intervalle Booléen 8 DANS [0..10] VRAI REMARQUES : Les opérateurs DIV et MOD ne sont utilisés qu’avec les entiers. L’expression : 12.2 MOD 2 est INCORRECT MEKKIAnis 1 Année Scolaire : 2014/2015 Chapitre 1 : Les structures de données Cours 4ème Sc Les opérateurs relationnels sur le type Entier Notation Algorithmique < > ≤ ≥ = ≠ Notation Turbo Pascal < > <= >= = <> Ecrire une analyse, un algorithme et un programme en Pascal intitulé Miroir qui permet de trouver et d’afficher le nombre miroir d’un entier N donné. B. Le type Réel (Real) Définition : Les valeurs du type réel forment un sous de R Les opérateurs applicables sur les réels Les opérateurs arithmétiques : + , - , * , / Les opérateurs relationnels : = , < , > , <= , >= , <> Les fonctions arithmétiques standard (voir tableau Page 13 ou Annexe1) REMARQUES : -21.4E3 (= -21,4 * 103 = -21400) ; 1.234E-2 (= 1,234*10-2) II.2. Le type Booléen (Boolean) Activité 2 : Soit l’instruction suivante : B : = 12 >= 10 ; I. Quelle est la valeur de B ?....................VRAI........................ II. Quel est le type d’objet B ?.................BOOLEEN.......................................................... Domaine des valeurs du type Booléen (Boolean) Le type Booléen comporte deux valeurs VRAI (TRUE en Turbo Pascal) et FAUX (FALSE) Les opérateurs logiques : Non (Not) ; Et (And) ; Ou (Or) ; Ouex (Xor) REMARQUES : True OR False donne TRUE True AND False donne FALSE Xor donne True si les deux opérateurs sont DIFFERENTS REMARQUES : L’ordre de priorité des opérateurs est : ( ), X, DIV, MOD, +,- . II.3. Le type Caractère (Char) Activité 3 : Soit l’instruction suivante : C : = ‘’a’’; Quelle est le type de la variable C ? CARATERE Domaine des valeurs du type caractère Un caractère est représenté par le caractère lui-même placé entre deux COTES en algorithmique (un SEUL COTE en pascal). On distingue plusieurs types de caractères o Les lettres alphabétiques en majuscule [‘’A’’..’’Z’’] et en minuscule [‘’a’’ .. ‘’z’’]. o Les chiffres [‘’0’’..’’9’’] o Les symboles : ‘’!’’ , ‘’?’’ , ’’<’’ , ‘’(‘’ , … Tous ces caractères sont ordonnés selon leur code ASQII variant de 0 à 255 (voir P232). Caractère … ‘’0’’ … ‘’9 ‘’ … ‘’A’’ … ‘’Z’’ … ‘’a’’ … ‘’z’’ … Code Ascii … 48 … 57 … 65 … 90 … 97 … 122 … Les opérateurs sur le type caractère : =, <>, <, >, <=, >= , IN Exemple : ’’a’’ < ‘’A’’ RENVOIE LA VALEUR FAUX ‘’B’’ Dans [‘’A’’.. ‘’Z’’] RENVOIE LA VALEUR VRAI Les fonctions prédéfinies du type caractère (Voir P 17 ou Annexe 2) [ORD(c), CHR (n), SUCC(c), PRED(c), MAJUS(c)]
MEKKIAnis 2 Année Scolaire : 2014/2015
Chapitre 1 : Les structures de données Cours 4ème Sc REMARQUES : Il y a une différence entre le caractère ’’a’’ et ‘’A’’ Il y a une différence entre A (VARIABLE.) et ‘’A’’ (…CRACTERE….) 1 +3 vaut 4 et ’’1’’ + ’’3’’ vaut ‘’13’’.
II.4. Le type Chaîne de caractère
Activité 4 : Soit l’instruction suivante : CH : = ‘’a’’ + ‘’b’’; I. Quelle est la valeur de CH?.............’’ab’’.................. II. Quelle est le type de la variable CH ?.......CHAINE.................... Définition : Une chaîne de caractère est une ……SUITE….......de N caractères. Déclaration d’une chaîne en Pascal Nom_variable1 : String ; Nom_variable2 : String [L_max] Les opérateurs sur le type chaîne de caractères Toutes les comparaisons : ’’Ahmed’’ >’’Ahlem’’ + (…CONCAT) : ’’Abde’’ + ’’rahmen’’ vaut …ABDELRAHMEN… REMARQUES : La comparaison entre deux chaînes se fait…CARACTERE PAR CARACTERE……………………………………............
Les fonctions et les procédures prédéfinies du type chaîne(Voir P 20 ou Annexe 3)
REMARQUES : La longueur de la variable « Nom_variable1 » est par défaut 255. On accéde au ième caractère d’une chaîne CH en utilisant la notation CH[i] où 1<= i<= Long(CH) et Long(CH) désigne la … de la CH. Exemple CH"Labib" ; CH[4] vaut le caractère …’’i’’… CH[long(ch)] vaut le caractère ……’’b’’…… CH[1] "H" donc CH devient la chaîne…’’Habib’’.….
II.5. Le type scalaire énuméré
Mise en situation Quelle est le type que peut prendre une variable qui contient un jour de la semaine ?....……… ………………………………LE TYPE SCALAIRE ENUMERE…………………………... Activité 5 : Définir en algorithmique et en langage Pascal une variable S de type Semaine, type énuméré représentant les jours de la semaine. Déclaration d’une variable de type scalaire énumérée o En algorithmique Tableau de déclaration des nouveaux types (TDNT) Types Semaine = (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche) Tableau de déclaration des objets (TDO) O.U Nature/Type Rôle S …SEMAINE…… …………..
MEKKIAnis 3 Année Scolaire : 2014/2015
Chapitre 1 : Les structures de données Cours 4ème Sc o En Pascal TYPE Semaine = (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche) ; Var S :Semaine ; Définition : Le type scalaire par énumération définit un ensemble fini et ordonné de valeurs désigné par des identificateurs Fonctions prédéfinies sur le type scalaire énuméré Succ (mardi) = Mercredi Pred (dimanche) = Samedi Ord (lundi) = 0 REMARQUES : Les types Entier, Caractère, Booléen, et énuméré sont des types scalaires. Une variable de type scalaire énumérée ne peut pas être lue ni écrite. L’ordre du premier élément d’un type énuméré vaut 0
II.6. Le type intervalle
Mise en situation Quelle est le type que peut prendre une variable qui contient une lettre de l’alphabet ?..……… …………………………………………………………………………………………………... Activité 6 : Définir en algorithmique et en langage Pascal une variable M de type Majuscule représentant toutes les lettres en majuscule. Définition : Le type intervalle possède les propriétés d’un type scalaire discret … fini……, (ordonné, et déduit d’un type scalaire énuméré). Déclaration d’une variable de type intervalle o En algorithmique Tableau de déclaration des nouveaux types (TDNT) Types MAJUSCULE = ‘’A’’ .. ‘’Z’’ Tableau de déclaration des objets (TDO) O.U Nature/Type Rôle M Var/ MAJUSCULE ………….. o En Pascal TYPE MAJUSCULE = ‘A’..’Z’ ; Var M : MAJUSCULE ; Exemple : TYPE Chiffre = 0 . . 9 SAISON = (AUTOMNE, HIVER, PRINTEMPS, ETE ) Trimestre = AUTOMNE . . PRINTEMPS
II.7. Le type tableau
Activité 6 : Etablir une analyse et en déduire l’algorithme intitulé Moyenne permettant de saisir les moyennes de 20 élèves puis d’afficher leur moyenne générale. Valeur rangé dans le tableau Moyenne
12,5 17 11 14,25 16 … 15,75
1 2 3 4 5 20
MEKKIAnis 4 Année Scolaire : 2014/2015
Chapitre 1 : Les structures de données Cours 4ème Sc Moyenne
Définition : C’est une structure de données permettant de ranger un nombre fini de
données de meme type. Il est caractérisé par son nom, sa taille et le type de ses éléments.
Déclaration d’un tableau
o 1ère méthode : Tableau de déclaration des objets ( T D O ) Objet Nature/Type Rôle Identifiant_Tableau Tableau de taille_max de Type_element VAR Identifiant_Tableau : Array[B_Inf .. B_Sup ] of type_element ; o 2ème méthode : Tableau de déclaration des nouveaux types Type Nom_Type = Tableau de taille_max de Type_éléments Tableau de déclaration des objets Objet Nature/Type Identifiant_Tableau Variable / Nom_Type Déclaration en Turbo Pascal Type Nom_Type = Array [B_Inf .. B_Sup ] of type_element ; Var Identifiant_Tableau : Nom_Type ; L’accès à un élément d’un tableau L’accès à un élément du tableau est directe Chaque élément d’un tableau est présenté par l’indice ou i est l’indice de l’élément. Cet indice doit être dans l’intervalle B_Inf..B_Sup. Exemple : Moyenne[1] désigne la valeur de la case N°1 du tableau Moyenne : 12.5