Les étudiants ont déjà suivi un cours d'initiation à la programmation en Java en L1. Python est un langage objet mais qui n'oblige pas à écrire des classes dès le début. L'objectif de ce cours est donc de consolider les bases de l'écriture d'un programme (instructions de base, fonctions,
notion de type, ...) avant de passer à un apprentissage plus élaboré.
1. Rappels :
- Principes élémentaires de programmation : affectation, conditionnelle, itération et types de bases.
- Fonctions (variables locales, globales). Conventions de nommage et doctstring.
- Types
2. Programmation en Python
- Apprentissage d'un IDE (environnement de développement en Python)
Pycharm ou autre (notion de projet, fenêtre console, documentation,...)
- Structures de données Python : chaînes, listes, tuples, dictionnaires
- Variables locales, globales, paramètres.
- Notion de récursivité (exemples simples).
- Complexité pratique, correction de programmes (invariants de boucles).
3. Algorithmique : Programmation d'algorithmes orientés mathématiques.
- Evaluation de suites ou séries.
- Calcul de zéros d'une fonction (méthode de Cauchy, Newton).
- Calculs modulaires et applications (par exemple chiffrement RSA).
- Calculs sur les polynômes.
- Pivot de Gauss.