Algorithmique (Référence : www.technologuepro.com) Chapitre 1 : INTRODUCTION A
Algorithmique (Référence : www.technologuepro.com) Chapitre 1 : INTRODUCTION A L'ALGORITHME Objectif :Ce cours d'informatique Introduction à l'algorithme à pour objectif de faire connaître le but du cours d'algorithmique Éléments de contenu : Qu'est ce qu'une application informatique ? Comment arriver d'un problème réel à un programme pouvant être exécuté par ordinateur Liens entre ALGORITHMIQUE et STRUCTURES DE DONNEES Intérêt de l'algorithmique Informatiser une application, facturation de la consommation d'eau, par exemple, c'est faire réaliser par ordinateur, une tâche qui était réalisée par l'Homme. Pour faire exécuter une tâche par ordinateur, il faut tout d'abord, détailler suffisamment les étapes de résolution du problème, pour qu'elle soit exécutable par l'homme. Ensuite, transférer la résolution en une suite d'étapes si élémentaire et simple à exécuter, pouvant être codée en un programme dans un langage compréhensible par ordinateur. Toute suite d'étapes si élémentaire et simple à exécuter s'appelle un ALGORITHME. Un programme c'est un algorithme codé dans un langage compréhensible par ordinateur à l'aide d'un compilateur (traducteur). Définitions L'algorithme est le résultat d'une démarche logique de résolution d'un problème pour la mise en œuvre pratique sur ordinateur et afin d'obtenir des résultats concrets il faut passer par l'intermédiaire d'un langage de propagation. Un algorithme décrit une succession d'opérations qui, si elles sont fidèlement exécutées, produiront le résultat désiré. Un algorithme est une suite d'actions que devra effectuer un automate pour arriver en un temps fini, à un résultat déterminé à partir d'une situation donnée. La suite d'opérations sera composée d'actions élémentaires appelées instructions. 1-a) Qu'est ce que l'Algorithmique ? C'est la logique d'écrire des algorithmes. Pour pouvoir écrire des algorithmes, il faut connaître la résolution manuelle du problème, connaître les capacités de l'ordinateur en terme d'actions élémentaires qu'il peut assurer et la logique d'exécution des instructions. Les étapes de résolution d'un problème 1. Comprendre l'énoncé du problème 2. Décomposer le problème en sous-problèmes plus simple à résoudre 3. Associer à chaque sous problème, une spécification : Les données nécessaires Les données résultantes La démarche à suivre pour arriver au résultat en partant d'un ensemble de données. 4. Elaboration d'un algorithme. Structure d'un algorithme ALGORITHME nom_de_l'algorithme CONST {Définition des constantes} TYPE {Définition de types} VAR {Déclaration de variables} DEBUT {Suite d'instructions} FIN 1-b) Rappel des notions de : · Constante, · Type, · Variable. 1-c) Exemple 1 ALGORITHME afficher DEBUT Ecrire("La valeur de 3*5 est ", 3*5) FIN Cet algorithme permet d'afficher sur l'écran la phrase suivante : La valeur de 3*5 est 15 Exemple 2 On veut écrire l'algorithme qui permet de saisir 3 notes d'un étudiant dans trois matières, étant donnés les coefficients respectifs 2, 3 et 1. Résolution A partir de l'énoncé du problème, nous recherchons la solution par une démarche en 2 phases. On doit comprendre comment le résoudre manuellement, Définir ce qu'on a besoin comme données, quelles est la démarche à suivre (formules de calcul) pour arriver aux résultats. Pour notre problème, nous connaissons les coefficients et la formule de calcul (åNi*Ci / åCi), nous avons besoins des notes de chaque matière dans l'ordre, et enfin nous pouvons communiquer le résultat à l'utilisateur. ALGORITHME MOYENNE CONST C1=2 C2=3 C3=1 VAR N1, N2, N3 : REEL MOY : REEL DEBUT {Affichage message : Invitation de l'utilisateur à introduire des données} ECRIRE(" Donner trois valeurs réelles ") {Saisie des notes} LIRE(N1, N2, N3) {Calcul de la moyenne} MOY¬ (N1*C1+N2*C2+N3*C3) / le du résultat sur l'écran} ECRIRE(" La moyenne est = ", MOY) FIN Remarque : Le texte entre les accolades est purement explicatif, il sert à rendre l'algorithme plus lisible. Chapitre 2 : LES ACTIONS ALGORITHMIQUES SIMPLES Objectif du cours : Comprendre les actions algorithmiques simples et connaître leurs syntaxes Éléments de contenu du cours: Concepts de base La saisie de données L'affichage L'affectation L'évaluation d'une expression arithmétique 1.1. 0. Concepts de base Dans tout ce qui suit, pour présenter les syntaxes, on suit les règles suivantes : · Ce qui est entre les crochets est optionnel. · La suite des points de suspensions "…" veut dire que ce qui précède peut se répéter plusieurs fois. · Le symbole " | " veut dire : " ou bien ". · Les mots en majuscule sont des mots réservés. · Ce qui est entre accolades est un commentaire, pour la lisibilité des algorithmes. 1.2.1. L'affichage : ECRIRE Cette action permet de communiquer un résultat ou un message sur écran ou sur imprimante pour l'utilisateur. Syntaxe ECRIRE(paramètre1 [[,paramètre2]…]) Paramètre = variable | expression | constante Constante = nombre | message 1-a) Exemples ECRIRE(" La valeur de 3*2 est égale à ", 3*2) message expression ECRIRE(" La moyenne est = ", MOY) Variable 1.3. 2. La saisie des données : LIRE L'ordre LIRE permet à l'ordinateur d'acquérir des données à partir de l'utilisateur, dans des cases mémoire bien définies (qui sont les variables déclarées). Rappel Les variables sont des cases mémoire, supposées contenir un type de données, nommées par le nom de variable. Syntaxe LIRE(variable1 [[, variable2] …]) Remarques : 1. La saisie se fait uniquement dans des variables. Ce sont les cases (cellules) qui pourront accueillir les données correspondantes. 2. La donnée à introduire doit être de même type que la variable réceptrice. 1.4. 3. Les expressions arithmétiques Parmi les opérateurs, on distingue les fonctions et les opérateurs. Les fonctions · La fonction DIV permet de donner le résultat de la division entière d'un nombre par un autre. 7 DIV 2 = 3 · La fonction MOD (se lit Modulo), permet de donner le reste de la division entière d'un entier par un autre. 7 MOD 2 = 1 · La fonction ** ou ^ permet d'élever un nombre à la puissance d'un autre. 2**3 ®8 Les opérateurs · Sont le "+", "-", "/", "*" et le "-" un aire. Ordre de priorité Les opérateurs suivants sont ordonnés du plus prioritaire au moins prioritaire dans l'évaluation d'une expression arithmétique. 1- Les parenthèses 2- "- " un aire 3- Les fonctions 4- Les opérateurs de multiplication " * " et de division " / " 5- Les opérateurs d'addition " + " et de soustraction " - " Remarque Si l'ordre entre les opérateurs dans une expression est le même, on évalue l'expression de gauche à droite. Exemples 3**2+4 = 9+4=13 3**(2+4)=3**6 car les parenthèses sont plus prioritaires 17 MOD 10 DIV 3=(17MOD10)DIV3=7DIV3=2 1.5. 4. L'affectation C'est l'action de charger une valeur dans une variable. Cette valeur peut elle-même être une variable, le résultat d'une expression arithmétique ou logique ou une constante. Syntaxe Variable1 ¬ variable2 | expression | constante A ¬ B se lit " A reçoit B " Le résultat de cette action est de mettre le contenu de la variable B dans la variable A. Si B était une expression, elle aurait été évaluée, ensuite sa valeur est transférée dans la variable réceptrice (à notre gauche). Remarque L'affectation ne vide pas la variable émettrice (à notre droite) de sa valeur. Par contre, le contenu de la variable réceptrice est écrasé Supposons qu'on ait deux récipients A et B où A contient un liquide coloré en jaune et B contient un liquide rouge. Peut-on échanger les contenus de A et de B (c.-à-d. mettre le liquide rouge dans A et le liquide jaune dans B). Résultat Cette opération n'est possible que si on utilise un troisième récipient qu'on appelle récipient auxiliaire. Avec des variables réelles, cette opération d'échange de contenu se fait entre cases mémoires qui représentent les conteneurs (récipients). Problème : Echanger les valeurs de 2 variables numériques. Principe : pour éviter de perdre l'une des 2 valeurs initiales (A et B), on utilise une 3ième variable pour préserver la valeur initiale de la première variable modifiée. Remarques Importantes Toute variable utilisée dans un algorithme doit être déclarée au début de l'algorithme, une fois et une seule. L'affectation de valeur à une variable peut être effectuée autant de fois que l'on veut au cours d'un algorithme. La valeur de la variable sera alors modifiée à chaque affectation. Lorsqu'une variable apparaît en partie droite d'une action d'affectation, c'est que l'on suppose qu'elle contient obligatoirement une valeur. Cette valeur devra lui avoir été affectée auparavant (par initialisation ou saisie), sinon l'on dira que la valeur est indéfinie, et le résultat de l'affectation ne sera pas défini. La variable réceptrice d'une affectation doit être de même type que de la valeur à affecter ou de type compatible. Le type est dit compatible s'il est inclus dans le type de la variable réceptrice. Exemple : REEL ¬ ENTIER est possible mais pas l'inverse. Exemple Ecrire l'algorithme qui permet de calculer le discriminant D (delta) d'une équation du second degré. Chapitre 3 : Les structures Conditionnelles 1.1.Introduction Souvent les problèmes nécessitent l'étude de plusieurs situations qui ne peuvent pas être traitées par les séquences d'actions simples. Puisqu'on a plusieurs situations, et qu'avant l'exécution, on ne sait pas à quel cas de figure on aura à exécuter, dans l'algorithme on doit uploads/Finance/ cours-algo-introduction-a-l-algorithmique-pas-mal-tableaux-23-a-37.pdf
Documents similaires
-
21
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Apv 20, 2022
- Catégorie Business / Finance
- Langue French
- Taille du fichier 1.0418MB