Programmation structurée Page 1 sur 109 Office de la formation Professionnelle

Programmation structurée Page 1 sur 109 Office de la formation Professionnelle et de la promotion du travail DRPS/ISGI LAAYOUNE Le 12/10/2020 Filière : Techniques de Développement Informatique Module : Programmation structurée Proposé par :Abdelmounaim BENDAOUD Programmation structurée Page 2 sur 109 Table des matières Rôle des algorithmes en Informatique. ..................................................................6 ALGORITHMES :..................................................................................................6 La structure générale d’un algorithme: .................................................................7 L’entête de l’algorithme : .......................................................................................8 Les données de l'algorithme :.................................................................................8 I. Le concept de variable : ................................................................................8 1. Type d’une variable: .....................................................................................9 2. La valeur d’une variable ...............................................................................9 Les types primitifs de DONNEES : ....................................................................10 1. Les types numériques .................................................................................. 10 Opérations définies sur les entiers : ......................................................................10 les opérateurs de comparaison : ............................................................................ 10 Opérations définies sur les types Réel : ................................................................11 Déclaration d’une variable : .................................................................................14 Les expressions : ..................................................................................................15 Expressions arithmétiques : ..................................................................................15 Instructions de base :............................................................................................18 L’affectation .........................................................................................................18 Les instructions d’entree /sortie ...........................................................................18 Activité :...............................................................................................................22 Module : Techniques de Programmation Structurée. ..........................................25 LES STRUCTURES DE CONTROLES .............................................................30 1. Structures de contrôle conditionnelles :.....................................................30 a- L’instruction Si :......................................................................................... 30 Programmation structurée Page 3 sur 109 b- L’instruction Si…..Sinon ........................................................................... 31 c- Si ….SinonSi…..Sinon................................................................................ 33 La structure de branchement Selon…Cas : ..........................................................34 DESCRIPTION DE L’ACTIVITÉ ......................................................................38 LES STRUCTURES DE CONTROLE REPETITIVES (BOUCLES) : .............41 LA BOUCLE Faire….TantQue:..........................................................................41 La boucle TantQue….Faire (while).....................................................................45 La boucle JUSQU’À .............................................................................................48 La boucle Pour ......................................................................................................49 Les instructions de rupture de séquences : sortir (break) et continue . .................51 CHAPITRE 6 LES STRUCTURES DE DONNEES ..........................................57 Les tableaux : .......................................................................................................57 i. Tableau à une dimension : ........................................................................57 1. Concepts de base : ......................................................................................57 a. Syntaxe de déclaration : ............................................................................57 b. Accès à un élément : ..................................................................................57 2. Algorithmes de base : ...............................................................................59 2.1 Lecture au clavier d’un tableau (tous les éléments) ..............................59 2.2 Lecture au clavier d’un tableau (selon le besoin de l’utilisateur) ........59 2.3 Affichage des éléments ..............................................................................60 2.4 La somme des éléments d’un vecteur : ...................................................61 2.5 La somme de deux vecteurs :.....................................................................61 2.6 Multiplication par un scalaire ...................................................................61 2.7 Produit scalaire de deux vecteurs : ...........................................................62 2.8 Recherche de l’indice de la première occurrence d’une valeur v : .........62 Programmation structurée Page 4 sur 109 2.10 Algorithme de la rechercher du maximum : .........................................64 2.11 Algorithme de suppression d’un élément ..............................................64 2.12 Algorithme d’insertion d’une valeur à une position : ..........................65 2.13 Algorithme qui inverse l’ordre des éléments :.......................................66 2.14 Algorithme d’éclatement en deux selon une condition : ......................66 Algorithmes de tri ................................................................................................68 Tri par échange : ...................................................................................................68 Tri à bulles ............................................................................................................69 Tri par insertion : ..................................................................................................70 Tri par sélection des minimums successifs :.........................................................71 Tri par comptage :.................................................................................................71 Tableaux à deux dimensions (matrices) :.............................................................73 1. Notations de base: ......................................................................................73 a. Syntaxe de déclaration ............................................................................... 73 b. Exemple : .................................................................................................... 73 c. Accès à un élément :................................................................................... 73 d. Exemples ..................................................................................................... 74 e. Parcourir une matrice : ................................................................................ 74 2. Algorithmes de base : ...............................................................................75 2.1 Lecture au clavier : ..................................................................................... 75 2.2 Affichage à l’écran : ................................................................................... 76 2.3 Somme des éléments d’une matrice ........................................................... 76 2.4 Trace d’une matrice (somme des éléments de la diagonale principale) : 77 2.5 Somme de deux matrices ............................................................................ 77 2.6 Construction de la matrice unitaire ........................................................... 78 Programmation structurée Page 5 sur 109 I. Les structures (Enregistrements) : ..........................................................84 1. Définition : .................................................................................................84 2. Syntaxe de déclaration : ............................................................................85 3. Variables structure: ...................................................................................85 4. Accès aux champs : ...................................................................................86 5. Structures imbriquées :..............................................................................87 6. Champ de type tableau : ............................................................................88 7. Tableaux de type structure (Table) : .........................................................88 I. Fonction : ...................................................................................................94 1. Déclaration d’une fonction : .....................................................................94 a. Syntaxe : ..................................................................................................... 94 b. Exemple :.................................................................................................... 95 c. Les paramètres : ......................................................................................... 95 d. La valeur de retour :................................................................................... 95 2. L’appel d’une fonction : ............................................................................95 3. Exécution d’une fonction : ........................................................................95 II. Les procédures : ........................................................................................97 1. Définition : .................................................................................................97 2. Syntaxe : .....................................................................................................97 3.1 Passage de paramètres par valeur : ...........................................................98 3.2 Passage de paramètre par adresse ou référence : ..................................100 Programmation structurée Page 6 sur 109 Rôle des algorithmes en Informatique. Qu’est-ce qu’un algorithme ? En quoi l’étude des algorithmes est-elle utile ? Quel est le rôle des algorithmes par rapport aux autres technologies informatiques ? Ce chapitre a pour objectif de répondre à ces questions. ALGORITHMES : Voici une définition informelle du terme algorithme : procédure de calcul bien définie qui prend en entrée une valeur, ou un ensemble de valeurs, et qui donne en sortie une valeur, ou un ensemble de valeurs. Un algorithme est donc une séquence d’étapes de calcul qui transforment l’entrée en sortie. L’on peut aussi considérer un algorithme comme un outil permettant de résoudre un problème de calcul bien spécifié. L’énoncé du problème spécifie, en termes généraux, la relation désirée entre l’entrée et la sortie. L’algorithme décrit une procédure de calcul spécifique permettant d’obtenir cette relation entrée/sortie. Supposons, par exemple, qu’il faille trier une suite de nombres dans l’ordre croissant. Ce problème, qui revient fréquemment dans la pratique, offre une base fertile pour l’introduction de nombre de techniques de conception et d’outils d’analyse standard. Voici comment nous définissons formellement le problème de tri : Entrée : suite de n nombres (a1, a2, ..., an). Sortie : permutation (réorganisation) (a1’, a2’, ..., an’) de la suite donnée en entrée, de façon que a1’<= a2’ <= ··· <=an’ . Ainsi, à partir de la suite (25, 45, 59, 62, 41, 28), un algorithme de tri produit en sortie la suite (25, 28, 41, 45, 59, 62). À propos de la suite donnée en entrée, on parle d’instance du problème de tri. En général, une instance d’un problème consiste en l’entrée (satisfaisant aux contraintes, quelles qu’elles soient, imposées dans l’énoncé du problème) requise par le calcul d’une solution au problème. ➢ Le mot algorithme provient de la forme latine algorismus du nom du mathématicien arabe Alkhawarizmi. Ce dernier a formulé une première définition :’’un algorithme est une séquence d’actions visant à la résolution d’un problème en un temps fini’’. Nous pouvant adopter la définition suivante :un algorithme est une suite finie d'instructions (opération, action) élémentaires, ordonnées permettant la résolution d’un problème bien défini. Programmation structurée Page 7 sur 109 ➢ Une instruction est une opération élémentaire qu’un ordinateur peut exécuter (exemples : Affichage d’un message, addition de deux nombres, évaluation d’une condition…). ➢ Un programme : Traduction d’un algorithme dans un langage de programmation particulier. ➢ Le développeur ou programmeur : c’est la personne qui conçois l’algorithme et écrit le programme. ➢ L’utilisateur ou client : c’est le destinataire du programme, c'est lui qui exprime un besoin d’informatisation d’un processus. Pour simplifier c’est lui qui va utiliser le programme (fournir les données d’entrées pour avoir des sorties). ➢ Les données d’entrées d’un algorithme sont les données que l’utilisateur doit fournir (saisir au clavier) à l’algorithme pour que ce dernier produise les résultats souhaités (les sorties de l’algorithme). La structure générale d’un algorithme: Un algorithme comporte toujours deux parties. L’entête et lecorps : Algorithme Nom Partie déclaration des données Entête Début Instructon1 Instructon2 … Corps …. InstructonN Fin Programmation structurée Page 8 sur 109 L’entête de l’algorithme : C’est une partie déclarative où on précise le nom de l’algorithme, ce nom est précédé par le mot clés Algorithme. Pour garantir une meilleure lisibilité, il est préférable que le nom de l’algorithme reflète l’objectif de l’algorithme. Par exemple un algorithme de résolution d’une équation de second degré est intitulé : Algorithme Equation De second degré. On trouve en suite la déclaration des données de l’algorithme, précédée du mot Variables ou constantes si il s’agit d’une donnée constante.  L’ajout des commentaires à un programme est une bonne pratique, elle a pour objectif de donner des explications qui facilitent la compréhension de l’algorithme. Un commentaire doit être mis entre /* commentaire */ si il est formé de plusieurs lignes, et après // si il s’agit d’une seule ligne de commentaire. Une instruction mise en commentaire est ignorée (ne sera pas exécutée) Les données de l'algorithme : La plupart des problèmes nécessitent le traitement de valeurs : certaines sont données dans l’énoncé, d’autres sont le résultat des calculs issus de l’exécution de l’algorithme. Une troisième catégorie de valeurs intermédiaires nous servira pour calculer les résultats intermédiaires. Les valeurs (informations) pour pouvoir être manipulées, sont stockées dans des variables. I. Le concept de variable : Une variable, en informatique, est un emplacement dans la mémoire centrale (RAM), réservé avec une déclaration, pour stocker une valeur utilisée par les instructions du programme (donnée d’entrée, de sortie ou intermédiaire). La RAM Une variable est définie par trois caractéristiques : identificateur, type, et valeur à un instant donné. 1. L’identificateur d’une variable : RAM valeur variable Programmation structurée Page 9 sur 109 C’est le nom que le programmeur attribue à la variable. Il permet d’identifier la variable dans l’algorithme. Pour faciliter la lecture de l’algorithme, l’identificateur doit être représentatif de ce que la variable va contenir. En revanche, il ne doit pas non plus être trop long pour ne pas nuire à la lisibilité de l'ensemble. Un identificateur doit respecter les règles suivantes : -il ne doit pas être uploads/Ingenierie_Lourd/ cours-algorithme-on-structur-ee.pdf

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