Algorithmique & Programmation (Résumé) I- Les structures de données I.1) Déclar
Algorithmique & Programmation (Résumé) I- Les structures de données I.1) Déclaration des constantes En Algorithmique : Tableau de Déclaration des Objets Objets Type/Nature Rôle Général Nom Constante = valeur de la constante Rôle Exemples Annee G Ville Existe Lettre Constante = 2014 Constante = 9.81 Constante = "Chebba" Constante = Vrai Constante = "B" En Pascal : • Syntaxe : CONST <nom_constante> = <valeur_constante> ; • Exemples : CONST annee = 2014 ; g = 9.81 ; ville = ‘Chebba’ ; existe = True ; lettre = ‘B’ ; I.2) Déclaration des variables En Algorithmique : T.D.O Objets Type/Nature Rôle Général Nom Type de la variable Rôle Exemples Code Heure Nb Moy Phrase Let Test Octet Entier Entier Long Réel Chaîne de caractères Caractère Booléen En Pascal : • Syntaxe : VAR <nom_variable> : type_variable ; • Exemples : VAR Code : Byte ; Heure : Integer ; Nb : LongInt ; Moy : Real ; Phrase : String ; Let : Char ; Test : Boolean ; Algorithmique & Programmation Prof. FENNI-S Page 1/10 I.3) Déclaration d’un tableau à une dimension Première formulation EN ALGORITHMIQUE T.D.O. Objet Type/Nature Rôle Ident_tableau Tableau de taille et de type_éléments MOY Tableau de 30 Réels EN PASCAL VAR Ident_tableau : ARRAY [Binf..Bsup] OF Type_éléments ; VAR Moy : array [1..30] of real ; Deuxième formulation EN ALGORITHMIQUE Tableau de déclarations des nouveaux types Type Nom_type = tableau de taille et de type_éléments T.D.O. Objet Type/Nature Rôle Ident_tableau Nom_type EN PASCAL TYPE Nom_type = ARRAY [Binf..Bsup] OF Type_éléments ; VAR Ident_tableau : Nom_type ; Exemple : Type Tab = Array [1..100] of string ; Var T : Tab ; I.4) Le type Enuméré 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, …) ; Exemples : TYPE JOURS = (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche) ; VOITURE = (renault, citroen, peugeot, ford, toyota) ; VOYELLE = (A, E, I, O, U, Y) ; N.B. Une valeur énumérée ne peut pas être une valeur appartenant à un type prédéfini (entier, réel, caractère, chaîne, booléen). I.5) Le type Intervalle 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 : TYPE JOURS = (lundi, mardi, mercredi, jeudi, vendredi, samedi, dimanche) ; JOUR_TRAVAIL = lundi . . vendredi ; MOIS = 1 . . 12 ; ALPHA = ‘a’ . . ‘z’ ; Algorithmique & Programmation Prof. FENNI-S Page 2/10 ANNEXE I Nom Algorithmique Code en Pascal Type de x Type du résultat Rôle Exemples en Pascal Abs (x) ABS (x) entier/réel type de x valeur absolue de x ABS (-4) = 4 ; ABS (-5.7) = 5.7 Carré (x) SQR (x) entier/réel type de x carré de x SQR (2) = 4 ; SQR (2.5) = 6.25 Racine Carré (x) SQRT (x) entier/réel réel racine carrée de x SQRT (25) = 5.00 ; SQRT (6.25) = 2.5 Cos (x) COS (x) entier/réel réel cosinus de x (x en radians) COS (PI/2) = 0.00 Sin (x) SIN (x) entier/réel réel sinus de x (x en radians) SIN (PI/2) = 1.00 Tang (x) TAN (x) entier/réel réel tangente de x (x en radians) TAN (PI) = 0.00 Ln (x) LN (x) entier/réel réel logarithme népérien de x LN (1) = 0.00 Exp (x) EXP (x) entier/réel réel exponentiel de x EXP (0) = 1.00 Tronc (x) TRUNC (x) réel entier partie entière de x TRUNC (3.15) = 3 TRUNC (-3.15) = -3 Ent (x) INT (x) réel réel partie entière de x INT (3.15) = 3.00 Arrondi (x) ROUND (x) réel entier entier le plus proche de x ROUND (9.49) = 9 ROUND (9.5) = 10 Frac (x) FRAC (x) réel réel partie décimale de x FRAC (2.45) = 0.45 Aléa RANDOM - réel renvoie un réel aléatoire dans [0, 1[ 0.36 ; 0.075 ; 0.98 ; 0.02 ; … Aléa (x) RANDOM (x) entier entier renvoie un entier aléatoire dans [0, x-1] Random (7) renvoie un entier dans [0, 6] Odd (x) ODD (x) entier booléen VRAI si x est impair FAUX si x est pair ODD (3) = True ODD (8) = False Inc (x) INC (x) ; scalaire type de x Procédure, qui incrémente x INC (x) ; l’équivalent de x Å x +1 INC(x, n) ; l’équivalent de x Å x + n Dec (x) DEC (x) ; scalaire type de x Procédure, qui décrémente x DEC (x) ; l’équivalent de x Å x - 1 DEC(x, n) ; l’équivalent de x Å x - n Pred (x) PRED (x) scalaire type de x prédécesseur de x, s’il existe PRED (5) = 4 ; PRED (‘C’) = ‘B’ PRED (True) = False Succ (x) SUCC (x) scalaire type de x successeur de x, s’il existe SUCC (5) = 6 ; SUCC (‘C’) = ‘D’ SUCC (False) = True Chr (x) CHR (x) octet caractère caractère dont le code ASCII est x CHR (65) = ‘A’ Ord (x) ORD (x) scalaire entier rang de la valeur x ORD(‘A’)=65 ; ORD(18)=18 ; ORD(true)=1 Majus (x) UPCASE (x) caractère caractère majuscule de x, s’il est possible UPCASE (‘b’) = ‘B’ UPCASE (‘R’) = ‘R’ * Un type scalaire est un ensemble fini et ordonné de valeurs (Entier, Caractère, Booléen, Enuméré, intervalle). LES STRUCTURES DE DONNEES # Prof : FENNI-S LES STRUCTURES DE DONNEES # Prof : FENNI-S ANNEXE II Les fonctions standard relatives aux chaînes de caractères Syntaxe Type En Algorithmique En Pascal Rôle Paramètres d’entrée Résultat Exemples en Pascal Long (ch) Length (ch) Retourne un entier représentant la longueur de ch. Long (ch) = ord (ch[0]) Chaîne Entier Lg := Length ('L''école'); Î lg = 7 Lg := Length ('') ; Î lg = 0 Lg := Length (' ') ; Î lg = 1 Pos (ch1, ch2) Pos (ch1, ch2) Retourne la première position de la chaîne ch1 dans la chaîne ch2. Chaînes Entier P := Pos ('T', 'ATTENTION') ; Î P = 2 P := Pos ('gra', 'Program') ; Î P = 4 P := Pos ('R', 'Professeur') ; Î P = 0 Sous_Chaîne (ch, p, n) Copy (ch, p, n) Retourne une sous chaîne de n caractères à partir de la position p de la chaîne ch. Chaîne, Entier, Entier Chaîne CH 1:= Copy ('Langage', 4, 3) ; Î CH1 = 'gag' CH 2:= Copy ('Bonjour', 4, 6) ; Î CH2 = 'jour' Concat (ch1, ch2, …) Concat (ch1, ch2, …) Retourne la concaténation de plusieurs chaînes en une seule. C'est l'équivalent de ch1+ch2+… Chaînes Chaîne CH1 := '9Janvier9' ; CH2 := Concat ('14', ch1, '2011') ; Î CH2 = '149Janvier92011' Les procédures standard relatives aux chaînes de caractères Syntaxe Type En Algorithmique En Pascal Rôle Paramètres d’entrée Résultat Exemples en Pascal Efface (ch, p, n) Delete (ch, p, n) ; Supprime N caractères de CH à partir de la position P. Chaîne, Entier, Entier Chaîne CH := 'Esclave' ; Delete (CH, 1, 3) ; CH devient 'lave' Insère (ch1, ch2, p) Insert (ch1, ch2, p) ; Insère une chaîne CH1 dans une autre CH2 à la position P. Chaîne/Caractère, Chaîne, Entier Chaîne CH1 := 'DA' ; CH2 := 'DIC' ; Insert (CH1, CH2, 3) ; CH2 devient 'DIDAC' ConvCh (n, ch) Str (n, ch) ; Convertit une valeur numérique N en une chaîne CH. Numérique, Chaîne Chaîne STR (2012, CH) ; CH = '2012' STR (14.52, CH) ; CH = '1.4520000000E+01' STR (14.52:8:3, CH) ; CH = '9914.520' Valeur (ch, n, err) Val (ch, n, err) ; Convertit une chaîne de caractères CH en une valeur numérique N. De plus, elle fournit un code d'erreur ERR qui indique si l'opération s'est déroulée correctement. Chaîne/Caractère, Numérique, Entier Numérique, Entier VAL ('1967', n, err) ; n = 1967 et err = 0 VAL ('25H64', n, err) ; n = 0 et err = 3 • Si n de type entier, après Val ('5.48', n, err), on obtient n = 0 et err = 2 • Si n de type réel, après Val ('5.48', n, err), on obtient n = 5.48 et err = 0 II- Les structures simples II.1) L’opération d’entrée (lecture, saisie) Analyse Algorithme Pascal Variable = Donnée Lire (variable) ReadLn (variable) ; Var1, Var2, Var3 = Données Lire (var1, var2, var3) Readln (var1, var2, var3) ; Variable = Donnée ("Message") Ecrire ("Message"), Lire (variable) Write ('Message') ; Readln (variable) ; II.2) L’opération de sortie (écriture, affichage) Analyse / Algorithme Pascal Ecrire ("Message", Nom_objet, Expression) Write ('Message', Nom_objet, Expression) Exemples : Analyse / Algorithme Pascal Résultat sur l'écran A Å 10 Ecrire (A) Ecrire ("Bonjour") A:=10 ; Write (A) ; Write ('Bonjour') ; 10Bonjour Ecrire (2 * 8 DIV 3) Ecrire (5 > 6) Writeln (2 * 8 DIV 3) ; Write (5 > 6) ; 5 False Ecrire (3, "*", A, " = ", 3*A) Writeln (3, '*', A, ' = ', 3*a) uploads/Management/ algorithmique-programmation-resume-4math 1 .pdf
Documents similaires
-
19
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Aoû 08, 2021
- Catégorie Management
- Langue French
- Taille du fichier 0.7697MB