Matière
Algorithmique et programmation 1
Description
Cette UE est un premier contact avec la programmation informatique. Elle commence par introduire les types de données élémentaires, les constantes, les variables, les expressions, et les structures de contrôle (conditionnelles et boucles). Puis sont étudiés les fonctions et les types de données composées (n-uplets et listes). Cette UE introduit également la notion d'algorithme, commune à tous les langages informatiques ; algorithmes itératifs et récursifs permettant de créer, interroger, trier, traiter différents types de données. Les bases de la méthodologie de résolution de problèmes sont présentées : analyse et représentation d'un problème, décomposition fonctionnelle, les notions de pré-condition et post-condition et élaboration de jeux de tests. Enfin, les bases de l’analyse de la complexité des algorithmes est abordée, en particulier à travers différents algorithmes de tri (tri à bulles, tri par insertion, tri fusion). Le langage pour cet enseignement est le python.
Compétences requises
mathématique élémentaires : manipulation de puissances et logarithmes
Compétences visées
-
Analyser et représenter un problème simple par des structures de données simples ;
-
Décomposer un problème en sous-problèmes ;
-
Proposer un ou plusieurs algorithmes pour résoudre un problème ;
-
Spécifier les fonctions nécessaires implémentant ces algorithmes ;
-
Mettre en oeuvre ces spécifications par des fonctions en python ;
-
Tester une fonction pour vérifier qu'elle satisfait les spécifications.
Modalités d'organisation et de suivi
UE obligatoire
Bibliographie
Document de cours Algorithmique et Programmation 1, Licence 1. Département d’informatique, Université de Strasbourg. S. Genaud, A. Habibi, V. Loechner, O. Merveille, S. Piquard, B. Sauvage, J.C. Zunino. 2023-2024.