Informatique et algorithmique
Cours · mathématiques approfondies (ECG 1re année), chapitre 11 · prépa ECG, 1re année · le début du chapitre, la suite sur Adloun
En ECG, l'informatique n'est pas une matière séparée : l'intitulé officiel du programme est « mathématiques approfondies – informatique ». Son rôle est énoncé sans ambiguïté — dès qu'un calcul numérique est envisagé, dès qu'un problème incite à tester expérimentalement un résultat, dès qu'une situation aléatoire peut être simulée, le recours à l'ordinateur doit devenir naturel.
Le langage est Python. Seules les commandes figurant dans la liste ci-dessous sont exigibles, et leur syntaxe précise sera rappelée dans les énoncés. On peut en employer d'autres, mais avec parcimonie : l'objectif reste la mise en pratique des mathématiques, pas la virtuosité en Python. Les commandes break et continue ne sont pas exigibles.
11.1 Structures de programmation
Python : Les quatre structures
if condition: # structure conditionnelle
...
elif autre_condition:
...
else:
...
for k in range(a, b): # boucle inconditionnelle
...
for x in T: # T : matrice, vecteur ou chaine de caracteres
...
while condition: # boucle conditionnelle
...
def f(x, y): # definition d'une fonction
...
return ...
Découper en fonctions, commenter à bon escient, tester. Un commentaire utile dit pourquoi, pas quoi : # on s'arrête quand le reste est majoré par eps vaut mieux que # boucle while.
11.2 Les commandes exigibles
Python : Vecteurs, matrices, et opérations élément par élément
import numpy as np
import numpy.linalg as al
M = np.array([[1., 2.], [3., 4.]])
print(np.shape(M)) # (2, 2)
print(M * M) # coefficient par coefficient !
print(np.dot(M, M)) # LE produit matriciel
print(al.inv(M), al.rank(M))
print(al.matrix_power(M, 5))
print(al.solve(M, np.array([1., 2.]))) # resout MX = B
Exercices du chapitre
- Deux produits qui n'en sont pas un corrigé
- Résoudre, et vérifier corrigé
- Une puissance de matrice, conjecturée puis démontrée corrigé
- Approcher corrigé
- L'escalier de la suite de Héron corrigé
- L'ordre de convergence des rectangles corrigé