CHAPITRE I : NOTION ELEMENTAIRE D’ALGORITHME I- DEFINITION DES CONCEPTS ET DES

CHAPITRE I : NOTION ELEMENTAIRE D’ALGORITHME I- DEFINITION DES CONCEPTS ET DES NOTIONS D’ALGORITHME A- DEFINITION DES CONCEPTS L’algorithme est un ensemble de règles opératoires rigoureuses, ordonnant à un processeur d’exécuter dans un ordre déterminé un nombre fini d’opérations élémentaires selon une syntaxe bien définie. On définit aussi l’algorithme comme étant une suite finie et ordonnée d’instructions (ordres) permettant de résoudre un problème. Le résultat doit donc s’obtenir en un temps fini. L’algorithmique est la science qui propose et étudie les méthodes de conception des algorithmes, analyse et détermine l’efficacité des algorithmes et recherche les algorithmes les plus efficaces pour résoudre un problème donné.  L’organigramme ou algorigramme est une représentation graphique des algorithmes. B- LES PROPRIETES D UN BON ALGORITHME Un bon algorithme doit être : - Compréhensible : car on n’écrit pas l’algorithme pour soit même mais pour les autres. - Lisible: l’algorithme doit respecter une structure bien définie et doit être compréhensible même par un non informaticien. - De haut niveau : il ne doit pas faire appel à des notions techniques - Précis: chaque élément de l’algorithme ne doit pas porter à confusion, il est donc important de lever toute ambiguïté. - Concis : tout algorithme ne doit pas dépasser une page. Si c’est le cas, l’on devrait diviser le problème en plusieurs sous problèmes. - Structuré : un algorithme doit être composé de différentes parties facilement identifiables. - Résoudre un problème - Se termine toujours En algorithmique, tout problème aussi complexe soit – elle se ramène toujours à une combinaison plus ou moins de trois procédures : 1) Identification des données Il s’agit de repérer les données nécessaires, voire indispensable à la résolution de problème. Ces données peuvent être numériques, sous forme de texte(caractère ou chaîne de caractères) ou de type logique(vrai ou faux). 2) Les opérations de traitement Il s’agit de déterminer toutes les étapes de traitement à faire et des « instructions » à donner pour une exécution manuelle ou automatique. L l pp S L x l 3) Les données en sortie Les résultats obtenus peuvent être affichés sur un écran, ou être imprimés dans un papier ou encore être conservés dans un fichier. Si on ne fait rien, les informations contenues en mémoire jusqu’à la prochaine exécution seront perdus. C- Base de la démarche algorithmique Les étapes pour écrire un algorithme correct sont les suivantes : Enoncer clairement les résultats à obtenir. Remonter des résultats aux données. Décomposer le traitement en niveaux hiérarchiques en allant du général au particulier et en identifiant les blocs logiques (structures algorithmiques de base). Construire un jeu d’essai pour vérifier si l’algorithme fonctionne et « faire tourner l’algorithme à la main » c'est-à-dire le dérouler. D- Les questions de bases Avant de commencer la construction d’un algorithme, il convient d’analyser d’abord en détails le problème posé. Cette analyse prend appui sur 03 questions de base qui sont les suivantes : - Quel est le résultat cherché ? - Qu’est – ce qui me faut pour résoudre le problème posé ? - Comment résoudre le problème ? - Faut – il afficher ou non les résultats ? Exemple on désire écrie un algorithme permettant de calculer la surface du rectangle de longueur L et de largeur l. et d’afficher le résultat à l’écran. Le schéma du processus correspondant est : -Demander L -Demander l -Calculer S=L x l - Afficher S II- STRUCTURE GENERALE D’UN ALGORITHME A- LANGAGE DE DESCRIPTION D’ALGORITHME Ce langage utilise un ensemble de mots clé et de structures permettant d’écrire de manière complète, claire, l’ensemble des opérations à exécuter sur les données pour obtenir des résultats ; on n’hésitera pas à agrémenter l’algorithme de nombreux commentaires. Rque : l’avantage d’un tel langage est de pouvoir être facilement transcrit dans un langage de programmation structuré (Pascal, C, Fortran….) a) Les mots clé Dans un LDA, certains mots sont réservés pour un usage bien défini, on les nomme les mots clés. Ce sont les mots que le langage utilise pour son fonctionnement. Rque : un mot clé ne peut être déclaré comme identificateur et il ne peut être utilisé comme variable. Dans un LDA, les mots clé commencent toujours par une majuscule et seront toujours soulignés. Comme mots clés, on peut citer : Algorithme :permet de définir ou de donner un nom à l’algorithme. Début :marque le commencement de l’algorithme. Fin algo : marque la fin de l’algorithme Variable : c’est une partie de l’algorithme permettant de déclarer des variables. Une variable est une case mémoire dont le contenu peut varier au cours de l’exécution d’un algorithme. Constante : c’est la partie de l’algorithme permettant de déclarer les constantes. Une constante est un objet ou case mémoire dont le contenu ne peut varier au cours de l’exécution d’un algorithme. Réel, Caractère, Entier, Chaîne…. : ce sont des mots clé permettant de définir des types. Si, Finsi, Tantque, Fintantque, Pour, Finpour, Repéter, Jusqu’à… sont des mots clés permettant de définir les structures itératives, conditionnelles… b) Les commentaires Comme tout langage, le LDA nous permet de faire des commentaires dans les algorithmes. Un commentaire est un texte ou ensemble de textes explicatifs destinés au lecteur de l’algorithme et qui n’ont aucune incidence sur son exécution. Les commentaires sont placés entre les symboles /* et */. Ils (commentaires) peuvent apparaître à tout endroit de l’algorithme et s’étendre sur une ou plusieurs lignes. Exemple /* ceci est un commentaire */ c) Les identificateurs Dans un programme, beaucoup d’éléments (variables, fonctions, types, …) sont désignés par un nom qu’on appelle identificateur. Comme dans la plupart des langages, un tel identificateur est formé d’une suite de caractères choisis parmi les lettres, chiffres ou caractères(-), le premier caractère étant différent d’un chiffre. Exemple valeur_5 ; Paul, _89 ; jean_paul_2 d) Les séparateurs Dans le langage naturel, les mots sont séparés par un espace, un signe de ponctuation ou de fin de ligne. Il en va de même pour un LDA. Les caractères séparateurs comprennent tous les opérateurs (+, -, *, =, ==, …) ainsi que ( ) ; [ ] ; , ; . ; :…. Corps de l’algorithme rtie déclaration des Constantes, des variables et des structures L’entête Algorithme Constantes(ou Const) Liste des constantes ; Variables (ou Var) Liste des variables ; Structures (ou Struct) Liste des structures ; Fonction (ou Fonc) Liste des fonctions ; Procédure (ou Proc) Liste des procédures ; Début Instruction1 ; Instruction2 ; ………. Instruction n ; Fin algo Partie déclaration des procédures et des fonctions B- STRUCTURE GENERALE D’UN ALGORITHME Rque : * L’entête : cette partie permet simplement de donner un nom à l’algorithme. Ce nom n’influence en rien le bon déroulement de l’algorithme. En général, il faut donner des noms parlant à nos algorithmes, ceci permettra au lecteur d’avoir une idée sur ce que fait cet algorithme. * Les parties déclaratives : C’est une liste exhaustive des objets, grandeurs utilisés dans l’algorithme. * Le corps : Dans cette partie, sont placées des tâches (instructions, opérations…)à exécuter par notre algorithme. * Tous les mots clés sont soulignés et commencent par une lettre majuscule. III- LES TYPES DE BASE ET LES INSTRUCTIONS SIMPLES A- Les TYPES DE BASE Un type de base est un type primitif ie non décomposable pour le problème considéré. Un type de base ne peut se décomposer en un assemblage de plusieurs types. On distingue cinq principaux types de base : 1) Le type entier La variable de type entier est une case mémoire dont le contenu ne peut être que des entiers relatifs. ie 50 ; 1001 ; -150 ; -8730 Exple Type elev = Structure Nom : Chaîne ; Age : Entier ; Sexe : Caractère ; Note : Réel ; Redoublant : Booléen ; Fin structure. Tout autre contenu différent du type entier sera refusé et par conséquent considéré comme une erreur. Le mot clé utilisé est : Entier 2) Le type réel La variable de type réel est une case mémoire dont le contenu ne peut être que des valeurs numériques appartenant à R. Seules les valeurs de type booléens, caractère ou chaîne de caractères seront considérées comme erreur. Le mot clé est Réel. 3) Le type booléen Les variables de type booléens ne peuvent contenir que les valeurs vrai ou faux, oui ou non. Le mot clé utilisé est Booléen. 4) Le type caractère Les variables de type caractère n’acceptent qu’un seul caractère alphabétique ou numérique. Exple ‘a’ ou ‘10’. Le mot clé utilisé pour leur déclaration est Caractère. 5) Le type chaîne de caractères Les variables de ce type acceptent plusieurs caractères. Le mot clé est Chaîne. 6) Le type tableau Un tableau de données est case mémoire pouvant contenir un ensemble de données de même type. Exple Tableau d’entiers, tableau de caractères. Le mot clé utilisé est tableau. B- LES TYPES CONSTRUITS Une variable de type construit est une case mémoire pouvant contenir des données de nature différente. Par exemple une variable qui contient en même temps des informations comme le nom, l’âge, la uploads/Ingenierie_Lourd/ algorithme.pdf

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