Chapitre 3 – Initiation à la programmation Plan du Chapitre 3 3.1 La programmation 3.2 L’algorithmique 3.3 Concepts issus de la programmation impérative 3.4 Des algorithmes types 3.1 La programmation 3.1.1 Pourquoi faudrait-il savoir programmer ? Permet de généraliser un traitement Permet d’ automatiser des tâches répétitives Les outils génériques sont peu adaptés aux besoins spécifiques SIAD sous Excel : Permet de Permet de faire des personnaliser le développement interfaces plus conviviales 3.1 La programmation 3.1.2 Ordinateur et programme Un ordinateur est un système automatique de traitement des données Données: codage numérique ( images, sons, …) binaire ) de l’information (nombres, textes, Premiers ordinateurs: fin des années 40 / début des années 50 Invention que l’on doit en grande partie à Alan Turing Nom de l'ordinateur : Bombe 3.1 La programmation 3.1.2 Ordinateur et programme Deux grandes familles de programmes : ▪ Système d'exploitation (tout ce qui concerne le fonctionnement autonome) ▪ (les logiciels) Applications Définition : d'opérations élémentaires et d'instruction Un programme est une séquence pouvant être comprises et exécutées par un ordinateur. Un programme est rédigé dans un langage de programmation: Java, Python, C++, VBA, etc. Ex ( IOS, WINDOWS ) 3.1 La programmation 3.1.3 Paradigmes de programmation Il existe de nombreux paradigmes de programmation, les deux plus répandus sont: Ex : recette de cuisine ; on réflechie cas par cas Le paradigme impératif Il définit étape par étape comment le résultat doit être obtenu Le paradigme objet Il obtient le résultat par la construction d'un certain nombre d'objets avec des comportements spécifiques et par leur manipulation. 3.2 L’algorithmique La conception de logiciel commence par un algorithme Avant de se lancer dans l’écriture d’un programme, il est indispensable de réfléchir et de concevoir un algorithme → Définir la suite d'opérations qui va permettre de réaliser l’objectif du programme L’algorithme est indépendant du langage de programmation utilisé. Le mot “algorithme” est dérivé du nom du mathématicien perse Al-Khwarizmi. 3.2 L’algorithmique Objectif : donner un algorithme qui permet de trier une liste de nombres par ordre croissant En entrée : Une liste de nombres En sortie : La liste de nombres en entrée triée par ordre croissant 5 25 15 10 20 3.2 L’algorithmique complexité algorithmique La théorie de la permet de déterminer le temps de calcul nécessaire à un algorithme en fonction du nombre de données en entrée