1ere Annee LMD Semestre 2 Dr A. Rahmoun SOMMAIRE ALGORITHMIQUE  1) Définitions

1ere Annee LMD Semestre 2 Dr A. Rahmoun SOMMAIRE ALGORITHMIQUE  1) Définitions. ..................................................................................................... 2  2) Organisation d’un programme. ...................................................................... 2  2.1) Déclaration des constantes ......................................................................... 2  2.2) Déclaration des variables ............................................................................ 3  2.3) Définition du programme principal................................................................ 3  2.4) Définition des fonctions et procédures.......................................................... 3  3) Affectation...................................................................................................... 4  4) Opérateurs - Conditions. ................................................................................ 4  4.1) Opérateurs................................................................................................. 4  4.2) Conditions .................................................................................................. 4  5) Les Structures algorithmiques. ...................................................................... 5  5.1) Séquencement linéaire ............................................................................... 5  5.2) Structures de choix (ou conditionnelles) ....................................................... 5  5.2.1) Structure SI ... ALORS .......................................................................... 5  5.2.2) Structure SI ... ALORS ...SINON ... ........................................................ 6  5.2.3) Structure de choix multiple..................................................................... 6  5.3) Structures itératives (ou répétitives) ............................................................. 7  5.3.1) Structure REPETER ... JUSQUA ........................................................... 7  5.3.2) Structure TANT QUE ... FAIRE .............................................................. 8  5.3.3) Structure POUR Indice ALLANT DE ... A .... FAIRE ................................ 8 1) DEFINITIONS. Algorithme : Description en langage naturel de la suite des actions effectuées par un programme. Algorigramme : Traduction graphique de l’algorithme. Parfois appelé Ordinogramme ou Organigramme. Syntaxe : Règles d’écriture d’un langage donné. Type de données : Un programme peut être amené à manipuler différents types de données : - booléen : valeur pouvant être soit Vraie, soit Fausse. - entiers : valeur numériques entières pouvant être signées ou non signées (codées sur un ou plusieurs octets; entiers + ou - ) - réels : valeurs numériques codées avec une mantisse et un exposant. (3.14, 456.765 , ….) - caractère : octet correspondant à un code ASCII. (A, B, a, b, &..) - chaîne de caractères : ensemble de caractères. (mot) - tableau de données : ensemble de données de même type (exemple : tableau d’entiers, tableau de réels). Toutes ces données sont codées sous forme d'octets en mémoire. Constante : donnée manipulée par un programme et ne pouvant être modifiée. Exemple : Constante Pi = 3.141559 Variable : donnée manipulée par un programme et pouvant être modifiée. Ce peut être : - une donnée d’entrée ; - le résultat final d’un calcul ; - un résultat intermédiaire de calcul. Identificateur : nom explicite d’une constante, d’une variable ou d’une fonction. Exemples : Conversion_BCD, Resultat, Lettre… Procédures et fonctions : Une procédure ou une fonction effectue une suite d’actions élémentaires constituant un tout. Une fonction se différencie d’une procédure par le fait qu’elle fournit un résultat. 2) ORGANISATION D’UN PROGRAMME. L’algorithme d’un programme est organisé en plusieurs parties : · déclaration des constantes · déclaration des variables · définition du programme principal · définition des fonctions et procédures 2.1) Déclaration des constantes Syntaxe : Constante NomConstante : [Type] = Valeur Exemples : Constante Pi = 3.141559  Constante NombreLettres = 10 2.2) Déclaration des variables Syntaxe : Variable NomVariable : [Type] Exemples : Variable Rayon : Reel Variable Compteur : Entier Variable Lettre : Caractere 2.3) Définition du programme principal Le programme principal consiste en une suite d’opérations élémentaires faisant souvent appel à des fonctions ou procédures. Ces différentes opérations sont mentionnées en utilisant les structures algorithmiques décrites au paragraphe 5. Le programme principal est délimité par les mots clefs Début et Fin 2.4) Définition des fonctions et procédures Les procédures et fonctions peuvent nécessiter éventuellement un ou plusieurs paramètres d’entrée ou de sortie. Un paramètre d’entrée est la référence à une variable manipulée par la procédure ou la fonction. Un paramètre de sortie est une valeur renvoyée par une fonction. Une fonction ou une procédure peut elle-même appeler une ou plusieurs fonctions et procédures. Syntaxe de la déclaration d’une procédure : Procédure NomProcédure (NomEntrée1 : [Type], NomEntrée2 : [Type],…) Constante ~ déclaration des constantes locales ~ Variable ~ déclaration des variables locales ~ Début ~ description des actions effectuées par la procédure ~ Fin Syntaxe de l’appel d’une procédure : NomProcédure (NomEntrée1, NomEntrée2…) Syntaxe de la déclaration d’une fonction : Fonction NomFonction (NomEntrée1 : [Type], NomEntrée2 : [Type],…) : [TypeDuRésultat] Constante ~ déclaration des constantes locales ~ Variable ~ déclaration des variables locales ~ Début ~ description des actions effectuées par la fonction ~ Fin Syntaxe de l’appel d’une fonction : Variable = NomFonction (NomEntrée1, NomEntrée2…) Exemples d’appels de fonctions et procédures : Procédure sans paramètre : Effacer_Ecran Procédure avec un paramètre d’entrée : Ex : Afficher (‘Bonjour’) Fonction avec paramètres d’entrée et de sortie :  Ex : Resultat = Racine (69) Exemple de déclaration de fonction : Fonction Moyenne (Note1 : Reel, Note2 : Reel) : Reel Variable Intermediaire : Reel Début Intermediaire = (Note1 + Note2)/2 Moyenne = Intermediaire Fin Exemples d’utilisation de la fonction : Afficher (Moyenne(10.5,15)) Ou NouvelleNote = Moyenne (10,5.5) 3) AFFECTATION. Une affectation consiste à attribuer une valeur à une variable. La syntaxe générale est la suivante : NomVariable = Expression « Expression » peut être :  · une constante..Ex : surface = 40  · une autre variable. Ex : Donnee = ValeurMemorisee · le résultat d’une fonction Ex : resultat = racine (nombre) · un calcul portant sur ces différents éléments Ex : surface = (PI * Carre (Diametre)) / 4  4.1) Opérateurs  1. Opérateurs mathématiques  Addition (et union) + Soustraction (et complément) - Division / Multiplication (et intersection) * , Egalité =  MOD: renvoie le reste de la division x MOD y  DIV: renvoie le quotient de la division x DIV y  Opérateurs prioritaires : *, /, DIV et MOD.  Opérateurs secondaires : + et -. Vous pouvez utiliser des parenthèses.  2. Opérateurs relationnels  Inférieur strict < Inférieur ou égale (et inclu) <=  Supérieur strict >  Supérieur ou égale (et contenant) >=  Différent <>  3. Opérateurs logiques :  AND: le "et" logique des maths  OR: le "ou"  XOR: le "ou" exclusif  NOT: le "non"  Priorité des opérateurs  Niveau 1 : NOT.  Niveau 2 : *, /, MOD, DIV, AND.  Niveau 3 : +, -, OR, XOR.  Niveau 4 : =, <, >, <=, >=, <>. 5) LES STRUCTURES ALGORITHMIQUES. Les structures algorithmiques sont réparties en 3 catégories : - succession linéaire d'opérations; - structures conditionnelles ou de choix : en fonction d'une condition, le programme exécute des opérations différentes; - structures itératives ou répétitives: sous contrôle d'une condition, une séquence d'opérations est exécutée répétitivement. 5.1) Séquencement linéaire Les actions successives sont mentionnées les unes après les autres. Syntaxe Algorigramme Action1 Action2 ... ActionN Exemple : Calcul d’un produit de 2 nombres Algorithme produit; Variable a,b : réel ~ opérandes ~ p : réel ~ résultat du produit ~ Début Afficher (‘Saisir le nombre a ‘) Saisir (a) Afficher (‘Saisir le nombre b ‘) Saisir (b) p = a * b afficher (p) Fin 5.2) Structures de choix (ou conditionnelles) 5.2.1) Structure SI ... ALORS ... Une condition est testée pour déterminer si l’action ou le groupe d’actions suivant doit être exécuté. Syntaxe Algorigramme Si Condition Alors Actions FinSi Exemple : Calcul d’une racine carrée Algorithme racine; Variable x: réel ~ opérande ~ r: réel ~ résultat de la racine carrée ~ Début Afficher (‘Saisir le nombre x‘) Saisir (x)  Si x > 0  Alors  r = racine (x)  afficher (r)  FinSi Fin program testif1; var x,r: real; begin writeln('entrez x:'); readln(x); if x>0 then r:=sqrt(x) ; writeln('r=',r); end. 5.2.2) Structure SI ... ALORS ...SINON ... Une condition est testée pour déterminer quelle action ou quel groupe d’actions doit être exécuté. Syntaxe Si Condition  Alors Actions1  Sinon Actions2 program testif1; var x,r: real; begin  writeln('entrez x:'); readln(x);  if x>0 then  begin r:=sqrt(x) ;  writeln('r=',r); end  else writeln('pas de solution'); end. Exemple : Calcul d’une racine carrée Algorithme racine2 Variables : x: réel ~ opérande ~ r: réel ~ résultat de la racine carrée ~ Début Afficher (‘Saisir le nombre x‘) Saisir (x) Si x < 0 Alors afficher (‘x est négatif’) Sinon  r = racine (x)  afficher (r)  FinSi Fin 5.2.3) Structure de choix multiple Une donnée est comparée successivement à des valeurs constantes : Syntaxe Cas Ou Donnée Vaut Valeur1 : Actions1 Valeur2 : Actions2 ... ValeurN : ActionsN Autre : ActionsDéfaut FinCas Remarques : la partie « ActionsDéfaut » peut ne pas exister. Plusieurs valeurs différentes peuvent être regroupées sur une même ligne si les actions correspondantes sont identiques. Exemple : Affichage de la nature d’un caractère Algoritme affichechar; Variable c: caractère Début Afficher (‘Taper un caractère‘) Saisir (c) Cas Ou c Vaut ‘A’..’Z’ : afficher (‘Lettre majuscule’) ‘a’..’z’ : afficher (‘Lettre minuscule’) ‘0’..’9’ : afficher (‘Chiffre’) autre : afficher (‘Ni Lettre Ni Chiffre’) FinCas Fin Program caseofEX2; Var car: char; Begin writeln('entrez un character'); readln(car); Case car of 'a'..'z' : writeln ('minuscule'); 'A'..'Z' : writeln('Majuscule'); '0'..'9' : writeln('Nombre'); end; end. 3.4. Ecrire les algorithmes qui calculent et affichent la surface d'un rectangle de longueur et de largeurs données. Program surface d'un rectangle ; Var surface, longueur, largeur : real ; Begin uploads/Ingenierie_Lourd/ mi-algorithme-semestre2.pdf

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