ajout de tous les cours et TP préparés cet été

This commit is contained in:
2026-01-17 23:10:49 +01:00
parent ed9415bc81
commit 301cf5a98f
125 changed files with 21614 additions and 542 deletions

View File

@@ -1,4 +1,4 @@
## Paradigmes de programmation
# Paradigmes de programmation
> Un paradigme est à la programmation ce quun style culinaire est à la cuisine : il impose des règles, des outils, et une manière de faire.
@@ -19,14 +19,14 @@ On peut regrouper les différents paradigmes en 2 catégories :
- la programmation **impérative** ;
- la programmation **déclarative**.
Lorsque l'on utilise la programmation impérative, on décrit le comment / la solution. On la retrouve dans plusieurs langage :
Lorsque l'on utilise la programmation impérative, on décrit le comment / la solution. On la retrouve dans plusieurs langages :
- Structurée (FORTRAN, C)
- Procédurale (FORTRAN, C)
- Objet (C++, Java, Python)
- Modulaire (C++, Java, Python)
Lorsque l'on utilise la programmation déclarative, on décrit le quoi / le problème. On la retrouve dans plusieurs langage :
Lorsque l'on utilise la programmation déclarative, on décrit le quoi / le problème. On la retrouve dans plusieurs langages :
- Descriptif (HTML, SQL)
- Fonctionnel (LISP, CAML)
@@ -40,7 +40,7 @@ Lorsque l'on utilise la programmation déclarative, on décrit le quoi / le prob
La programmation impérative, bien que versatile, conduit rapidement à des programmes difficiles à comprendre et à maintenir, où la démonstration de la correction est impossible.
Ceci est du au fait quun traitement de données :
Ceci est dû au fait qu'un traitement de données :
- dépend de paramètres extérieurs non maîtrisés : variables ;
- modifie les données, ou dautres : affectation ;
@@ -109,7 +109,7 @@ Une fonction à effet de bord est une fonction qui modifie ou utilise une variab
**__À nutiliser que lorsque cela est nécessaire !__**
Les effets de bord peuvent être évité facilement grâce au principe de localité des variables et la programmation fonctionnelle.
Les effets de bord peuvent être évités facilement grâce au principe de localité des variables et la programmation fonctionnelle.
```python
# Fonction avec effets de bord :
@@ -130,8 +130,9 @@ print("Avec k=3 : ", ajoute_k_a_n(3))
def ajoute_k_a_n(n, k):
return n + k
print("Avec k=2 : ", ajoute_k_a_n(2))
print("Avec k=3 : ", ajoute_k_a_n(3))
n = 2
print("Avec k=2 : ", ajoute_k_a_n(n, 2))
print("Avec k=3 : ", ajoute_k_a_n(n, 3))
```
#### Fonctions lambdas
@@ -144,7 +145,7 @@ Tout comme la machine de Turing, le λ-calcul peut représenter nimporte quel
La programmation **fonctionnelle** puise son origine du __λ-calcul__ alors que la programmation **impérative** puise son origine de la __machine de Turing__.
En python la lambda fonction se définie à l'aide du mot clé **lambda** :
En Python, la fonction lambda se définit à l'aide du mot-clé **lambda** :
```python
add_a_b = lambda a,b: a + b
@@ -191,7 +192,7 @@ maximum = functools.reduce(f_maximum, liste)
__Le filtrage__
Sélection les éléments dune liste vérifiant un certain critère.
Sélectionne les éléments d'une liste vérifiant un certain critère.
```python
liste = [1, 3, 5, 6, 2]
@@ -245,7 +246,7 @@ Voici une tâche simple : nous voulons faire cuire des pâtes.
------
Auteurs : Florian Mathieu, Timothée Decoster, Enzo Frémaux
Auteurs : Florian Mathieu, Enzo Frémeaux, Thimothée Decooster
Licence CC BY NC