ALGORITHME 1) STRUCTURE D’UN ALGORITHME Un programme algorithme respecte toujou

ALGORITHME 1) STRUCTURE D’UN ALGORITHME Un programme algorithme respecte toujours la structure suivante : La partie des DECLARATION ALGORITHME nom_algorithme { Description de l’algorithme } CONSTANTES …{ Définition éventuelle des constantes } TYPES …{ Définition éventuelle des types } VARIABLES{ Déclaration des varianbles } nom_var_1, nom_var_2, … : TYPE_1 nom_var_3 : TYPE_2 … nom_var_N : TYPE_N PROCEDURE…{ Définition éventuelle des procédures} FONCTION…{ Définition éventuelle des fonctions} La partie des INSTRUCTIONS DEBUT { Début du corps de l’algorithme } INSTRUCTION_1 INSTRUCTION_2 … INSTRUCTION_N FIN. { Fin de l’algorithme } 2) LES TYPES DE VARIABLES Une variable est aussi caractérisée par son TYPE, qui est l’ENSEMBLE des valeurs qu’elle peut prendre. Nous avons les types de BASE (supposés prédéfinis dans notre LDA) et les types STRUCTURES (définis par le programmeur).Les types de base sont : ENTIER = { … ; -2 ; -1 ; 0 ; 1 ; 2 ; …} REEL = { … ; -2.15 ; -1.114 ; 0 ; 1.0 ; 2.7 ; 3.14 ; …} CARACTERE = { 'a' ;'b' ; …;'z';'A' ;'B' ; …;'Z' ; '1' ; '2' ; …} CARACTERES= { "ali" ; "cahier" ; "mathématique"; "nom_1" ; "B145" ; …} BOOLEEN = { VRAI ; FAUX } 3) DECLARATION DE TABLEAU  TABLEAU A UNE DIMENSION : NOM_VARIABLE : TABLEAU [<indice_début>...indice_fin>] DE TYPE  TABLEAU A DEUX DIMENSIONS : TABLEAU [<indice_début_ligne>..indice_fin_ligne>, <indice_début_colonne>..indice_fin_colonne>] DE TYPE Les indices des tableaux commencent par 1. 4) CREATIONS DE TYPES Ceci se fait dans la zone type. On peut créer des types de tableau ou encore des enregistrements ou une combinaison des deux. Syntaxe de création d’un enregistrement. NOM_ENREGISTREMENT = ENREGISTREMENT Nom_var_1 :type, Nom_var_2 :type, …. Nom_var_n :type FIN Syntaxe de création d’un type TABLEAU NOM_TYPE = TABLEAU[id..if,id..if] DE TYPE 5) LES OPERATEURS Liste des opérateurs sur les entiers et les réels : + , - , * , / , DIV ,MOD ,TRUNC , ROUND, COS, SIN, ATAN, LN, SQRT, SQR, ABS. SQRT(x) est la racine carrée de x. SQR(x) est le carré de x. TRUNC(x) est la valeur entière de x. ROUND(x) est la valeur entière approchée de x. x DIV y est le résultat entier de la division de x par y. x MOD y est le résultat du reste de la division entière de x par y. Exemple : 9 / 2 = 4.5 (noté bien 4.5 au lieu de 4,5 dans notre LDA) SQRT(25) = 5 SQR(2) = 4 TRUNC(4.8) = 4 ROUND(4.8) = 5 5 DIV 2 = 2 5 MOD 2 = 1 Liste des opérateurs sur les caractères : SUCC, PRED , ORD, CHR SUCC(x) est le caractère qui suit x dans la table ASCII qui code les caractères. PRED(x) est le caractère qui précède x. ORD(x) donne le rang du caractère x dans la table ASCII. CHR(x) donne le caractère qui est codé par le nombre x. Exemples : SUCC('a') = 'b'. PRED('b') = 'a'. Liste des opérateurs logiques et de comparaison : =, <>, >, <, >=, <=, OU, ET, NON Opérateurs de concatenation : & Exemple :’Je ’&’mange’=‘Je mange‘ Priorité : NON est prioritaire sur ET qui est prioritaire sur OU Les expressions booléennes peuvent être construites avec l’opérateur ∈ et un ensemble : mois ∈ {1, 3, 5, 7, 8, 10, 12} exprime que l’entier rangé dans la variable mois représente un mois à 31 jours. Opérateurs d’assignation :  Opérateurs de lecture de l’entrée standard et d’affichage : LIRE (< identificateur de variable1>, [<identificateur de variable2>, …]) ECRIRE (<expression1>, [<expression2>, …]) Exemple : LIRE (Nom, Prenom, Age) ECRIRE ("le successeur de", X, " est ", X+1) <identificateur> : TABLEAU [<indice_début> ... <indice_fin>] DE <type> tab : TABLEAU [0 .. 15] DE ENTIER uploads/s3/ resume-algorithme.pdf

  • 34
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager