Introduction à l’algorithmique et à la programmation avec Python

L'algorithmique et la programmation constituent les piliers de l'informatique moderne, héritiers d'une double révolution théorique et technologique initiée par Turing et les inventeurs du transistor. Ce cours universitaire adopte une approche épistémologique unique, retraçant d'abord l'évolution des systèmes de codage de l'information depuis les fondements mathématiques des années 1930 jusqu'à l'ère du numérique contemporain. Vous découvrirez comment les concepts abstraits de calculabilité se matérialisent aujourd'hui dans nos ordinateurs grâce à Python.

La première partie forme un pont fascinant entre théorie et pratique :

  • Histoire des systèmes de numération et leur implémentation en Python

  • Représentation binaire des données et opérations bit à bit

  • Complexité algorithmique à travers les grands problèmes historiques (tri, recherche)

  • Limites computationnelles révélées par les machines de Turing

Le cours s'ancre ensuite dans la pratique algorithmique avec Python comme langage d'implémentation. Chaque structure de contrôle (boucles, récursivité) est reliée à son pendant mathématique, tandis que les types de données illustrent concrètement l'abstraction des ensembles. Les TP guidés vous feront recoder des algorithmes fondateurs comme le crible d'Ératosthène ou les tours de Hanoï, révélant leur élégance théorique à travers l'écriture pythonique.

Une attention particulière est portée aux paradigmes de programmation :

  • Impératif vs fonctionnel à travers la résolution de problèmes combinatoires

  • Modularité et preuve de correction via la décomposition en fonctions

  • Introduction aux structures de données abstraites (piles, files, graphes)

Public : Étudiants L1-L3 en informatique/mathématiques. Prérequis : bases d'algèbre ensembliste. Compatible parcours CPGE.


Auteur: Laurent Signac

Envoyé le : 24 Dec 2018

Type de fichier : PDF

Pages : 57

Téléchargement : 7194

Niveau : Débutant

Taille : 994.41 Ko