École Supérieure de Technologie Salé Chapitre 1 : Introduction à l’algorithmique 2019-2020 [email protected] A. Lasfar 1 Objectifs ● ● ● ● ● ● A. Lasfar Définition de l’algorithme Qu’est ce qu’une variable? Qu’est ce qu’un type ? Qu’est ce qu’une expression? Qu’est ce qu’une affectation? Lecture et écriture 2 1 La résolution informatique d'un problème algorithme problème programme A. Lasfar 3 La résolution informatique d'un problème énoncé d'un problème Résultats Expression de sa réalisation Exécution du programme (ALGORITHME) Programmation Transformation en binaire éxécutable à l’aide d’un langage Programme objet Programme source Compilation A. Lasfar 4 2 Qu’est-ce qu’un algorithme Données ● Algorithme Résultats Un algorithme est la description, dans un langage universel (pseudo-langage), des opérations nécessaires pour résoudre un problème A. Lasfar 5 Notion de pseudo langage ● ● L'avantage du pseudo-langage est qu'il permet d'écrire tout algorithme de façon formelle. La phase de programmation se trouvera nécessairement allégée, puisqu'elle se résumera à adapter l'ensemble des opérations décrites aux spécificités du langage utilisé. A. Lasfar 6 3 Élaboration d’un algorithme Quatre phases principales: 1. 2. 3. 4. Analyse du problème Expression d'une solution en langage courant Expression d'une solution en pseudolangage Tests et Vérification de l'adéquation de la solution A. Lasfar 7 Structure d’un algorithme Elle est composée d’un entête et d’un corps L’entête spécifie: § Le nom de l’algorithme (Nom) § Son utilité (But) § Quelle sont les données « en entrée », c’est-àdire les éléments qui sont indispensable à son bon fonctionnement (Entrée) § Quelles sont les données en « sortie », c’est-àdire les éléments calculés, produits par l’algorithme (Sortie:) A. Lasfar 8 4 Structure d’un algorithme ● Le corps est composé: § § § du mot clés début D’une suite d’instructions Du mot clés fin A. Lasfar 9 Structure d’un algorithme ● ● ● Instruction est l’expression dans un pseudocode ou dans un langage de programmation d ’un ordre fourni à la machine. Les instructions manipulent des objets. Chaque objet possède trois qualificatifs : identificateur, type et une valeur A. Lasfar 10 5 Formalisme Exemple de code : Noms: addDeuxEntiers But : additionner deux entiers a et b et mettre le résultat dans c Entrée: a,b : entiers Sortie: c : entiers Début Cßa+b fin A. Lasfar 11 6