Aller au contenu
Télécharger l'application

Accueil › ECG › Maths approfondies

ECG1 · Maths approfondies · semaine 33

Informatique et algorithmique en Python

Programmation d'algorithmes et de fonctions en Python avec instructions conditionnelles, boucles for et while et définition de fonctions. Commandes exigibles de base et des bibliothèques numpy, numpy.linalg, numpy.random, scipy.special et matplotlib.pyplot. Liste de savoir-faire exigibles en première année, mis en pratique lors des séances de travaux pratiques.

Sommaire

Le cours

Résumé en cinq points

  1. Le langage se réduit à quelques briques :

    • affectation ;
    • test ;
    • boucle for ;
    • boucle while ;
    • définition de fonction avec return.

    L'indentation délimite les blocs.

  2. Les commandes exigibles se répartissent entre :

    • numpy pour les tableaux ;
    • numpy.linalg pour l'algèbre ;
    • numpy.random pour les simulations ;
    • matplotlib.pyplot pour les tracés.
  3. Les algorithmes numériques de l'année sont :

    • la dichotomie ;
    • les suites récurrentes ;
    • la somme partielle avec critère d'arrêt ;
    • la méthode des rectangles.
  4. Toute loi discrète du programme se simule :

    • à partir de rd.random en suivant sa définition ;
    • ou directement avec rd.binomial, rd.geometric et rd.poisson.
  5. Les statistiques empiriques sur un échantillon simulé illustrent les résultats du cours :

    • fréquence contre probabilité ;
    • moyenne contre espérance ;
    • variance empirique contre variance.
Pourquoi ce chapitre

L'informatique accompagne les mathématiques toute l'année :

  • dès qu'un calcul numérique apparaît ;
  • dès qu'un résultat mérite d'être testé ;
  • dès qu'une situation aléatoire peut être simulée.

Deux bénéfices en découlent :

  • La compréhension : voir une fréquence se rapprocher d'une probabilité éclaire la loi faible des grands nombres.
  • L'examen : presque tous les sujets de concours comportent des questions d'informatique, souvent de quelques lignes, le plus souvent à compléter.

Ces questions se traitent avec un nombre restreint de commandes et avec une poignée d'algorithmes types.

Fin de l'aperçu gratuit

Encore 10 parties de cours et 9 corrigés.

Essayer 7 jours gratuitement Sans engagement · cours, exercices et fiches complets

Méthodes et exercices

Exercices classiques corrigés

On suppose faites les importations import numpy as np, import numpy.random as rd, import numpy.linalg as al et import matplotlib.pyplot as plt.

Rangés par thème, du plus simple au plus exigeant. Difficulté et durée indicatives.

Approximation de limite 2

Exercice 1. Rang d'arrêt géométrique ★★

Classiques de khôlle et concours · 20 min · Niveau khôlle

On pose u0=0u_0 = 0 et un+1=2+un.u_{n+1} = \sqrt{2 + u_n}. (a) Montrer que 0≤un≤20 \leq u_n \leq 2 et ∣un+1−2∣≤∣un−2∣2.|u_{n+1} - 2| \leq \frac{|u_n - 2|}{2}. (b) Écrire approx(eps) qui renvoie la limite à eps près.

Voir l'indice

Technique tirer le rang d'arrêt d'une majoration.

Voir le corrigé offert
  1. Si 0≤un≤20 \leq u_n \leq 2, alors un+1∈[2,2]u_{n+1} \in [\sqrt{2}, 2], d'où l'encadrement par récurrence.
  2. On a un+1−2=(un−2)/(2+un+2)u_{n+1} - 2 = (u_n - 2)/(\sqrt{2 + u_n} + 2), de dénominateur au moins 22.
  3. Donc ∣un−2∣≤2/2n|u_n - 2| \leq 2/2^n, et on calcule tant que ce majorant dépasse eps\mathrm{eps}.
def approx(eps):
    u = 0
    n = 0
    while 2 / 2**n > eps:
        u = np.sqrt(2 + u)
        n = n + 1
    return u
  1. À la sortie, u=unu = u_n avec 2/2n≤eps2/2^n \leq \mathrm{eps}, donc ∣u−2∣≤eps|u - 2| \leq \mathrm{eps}.

piège : Un arrêt sur ∣un+1−un∣<eps|u_{n+1} - u_n| < \mathrm{eps} ne mesure pas la distance à la limite.

Exercice 10. Méthode de Héron ★★

Classiques de khôlle et concours · 25 min · Niveau écrit HEC ou ESSEC

On pose u0=2u_0 = 2 et un+1=un+2un2.u_{n+1} = \frac{u_n + \frac{2}{u_n}}{2}. (a) Montrer que 2un≤2≤un.\frac{2}{u_n} \leq \sqrt{2} \leq u_n. (b) Écrire un programme qui approche 2\sqrt{2} à eps près avec arrêt garanti.

Corrigé détaillé dans Sup et Spé+ : essai gratuit 7 jours.

Approximation de somme ou d'intégrale 2

Exercice 2. Somme d'une série à 10−4 près ★★

Classiques de khôlle et concours · 20 min · Niveau khôlle, puis écrit Ecricome

On note S=∑k≥11k2S = \sum_{k \geq 1} \frac{1}{k^2} et SnS_n la somme partielle.

(a) Montrer que 1n+1≤S−Sn≤1n.\frac{1}{n+1} \leq S - S_n \leq \frac{1}{n}. (b) Donner deux programmes qui approchent SS à 10−410^{-4} près.

Voir le début du corrigé
  1. Pour k≥2k \geq 2, 1k−1k+1≤1k2≤1k−1−1k\frac{1}{k} - \frac{1}{k + 1} \leq \frac{1}{k^2} \leq \frac{1}{k - 1} - \frac{1}{k}. …

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Exercice 5. Encadrement d'une intégrale ★★

Classiques de khôlle et concours · 20 min · Niveau écrit Ecricome

On pose I=∫01e−t2 dt.I = \int_0^1 e^{-t^2}\,dt. Encadrer II par les sommes des rectangles à gauche et à droite, les programmer, et choisir nn pour que le milieu approche II à 10−310^{-3} près.

Voir le début du corrigé
  1. t↦e−t2t \mapsto e^{-t^2} décroît sur [0,1][0, 1], donc Dn≤I≤GnD_n \leq I \leq G_n.

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Recherche de zéro 1

Exercice 3. Dichotomie ★

Application du cours · 10 min · Niveau khôlle

Montrer que x3+x−1=0x^3 + x - 1 = 0 a une unique solution α\alpha dans [0,1][0, 1].

Combien de tours faut-il pour un intervalle final de longueur au plus 10−310^{-3} ?

Écrire l'appel.

Voir le début du corrigé
  1. ff est continue et strictement croissante car f′(x)=3x2+1>0f'(x) = 3x^2 + 1 > 0, avec f(0)=−1f(0) = -1 et f(1)=1f(1) = 1. …

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Simulation de loi 4

Exercice 4. Premier six ★

Application du cours · 10 min · Niveau khôlle

On lance un dé équilibré jusqu'au premier 6 et on note N le nombre de lancers. Simuler N, donner sa loi, estimer E(N).

Voir le début du corrigé
  1. On relance tant que le résultat diffère de 6.

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Exercice 7. Binomiale et Poisson ★★

Classiques de khôlle et concours · 25 min · Niveau écrit Ecricome

Comparer expérimentalement B(100, 0,02) et P(2) sur les valeurs 0 à 6. Quelle précision attendre ?

Voir le début du corrigé
  1. On simule et on superpose les fréquences.

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Exercice 9. Collectionneur de vignettes ★★

Classiques de khôlle et concours · 30 min · Niveau écrit HEC ou ESSEC

Chaque achat donne une vignette uniforme parmi nn, indépendamment.

On note TnT_n le nombre d'achats pour les avoir toutes.

Simuler TnT_n de deux façons et comparer avec E(Tn)=n∑k=1n1k.E(T_n) = n \sum_{k=1}^{n} \frac{1}{k}.

Voir le début du corrigé
  1. On marque les vignettes obtenues et on compte les distinctes.

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Exercice 6. Urne de Pólya ★★★

Approfondissement · 40 min · Niveau écrit BCE, type EDHEC

Une urne contient une boule blanche et une rouge.

On tire une boule et on la remet avec une boule de sa couleur.

On note BnB_n le nombre de blanches après nn tirages.

Simuler BnB_n, conjecturer la loi de B10B_{10}, la démontrer.

Voir le début du corrigé
  1. On lit la composition de l'urne à chaque tirage.

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Pivot de Gauss 1

Exercice 8. Pivot et remontée ★

Application du cours · 15 min · Niveau écrit BCE

Résoudre par le pivot de Gauss x+y+z=6,2x+y−z=1,x−y+2z=5.\begin{aligned} x + y + z &= 6, \\ 2x + y - z &= 1, \\ x - y + 2z &= 5. \end{aligned} Écrire remontee(T, B) pour un système triangulaire supérieur à diagonale non nulle.

Donner la commande directe.

Voir le début du corrigé
  1. L2 ← L2 − 2L1 et L3 ← L3 − L1 donnent −y − 3z = −11 et −2y + z = −1. …

La suite du corrigé dans Sup et Spé+ : essai gratuit 7 jours.

Fiche de cours rédigée à partir du programme officiel de la voie EC, mathématiques approfondies, partie « Enseignement annuel d'informatique et algorithmique », paragraphes « Programmation d'algorithmes et de fonctions », « Commandes exigibles » et « Liste de savoir-faire exigibles en première année ».