{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Suites et limites : exercices avec Python\n", "\n", "Notebook extrait de la fiche *Exercices : Limites de Suites*. Il regroupe les exercices qui utilisent Python (exercices 1-15 à 1-21).\n", "\n", "Les `...` sont à remplacer par le code attendu." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1-15 : Suite arithmético-géométrique\n", "\n", "On considère la suite arithmético-géométrique $(u_n)$ définie par\n", "\n", "$$\n", "\\left\\{\n", "\\begin{array}{l}\n", "u_{n+1} = 0.5\\,u_n + 1.5 \\\\\n", "u_0 = 1\n", "\\end{array}\n", "\\right.\n", "$$\n", "\n", "1. Représenter graphiquement les 4 premiers termes de la suite $(u_n)$ (sur papier ou avec Python).\n", "2. Conjecturer la limite de la suite $(u_n)$.\n", "3. Compléter la fonction Python suivante pour qu'elle renvoie le terme de rang $n$ de la suite $(u_n)$." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def u(n):\n", " u = ...\n", " for i in range(..., ...):\n", " u = ...\n", " return ..." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "4. En utilisant la fonction Python ci-dessus, retrouver le résultat conjecturé à la question 2." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Vos tests ici" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1-16 : Suite arithmético-géométrique\n", "\n", "Soit la suite $u$ définie sur $\\mathbb{N}$ par\n", "\n", "$$\n", "\\left\\{\n", "\\begin{array}{l}\n", "u_0 = 5 \\\\\n", "u_{n+1} = \\dfrac{1}{2} u_n + 3\n", "\\end{array}\n", "\\right.\n", "$$\n", "\n", "1. a. Calculer $u_1$ et $u_2$.\n", "\n", " b. La suite $u$ est-elle arithmétique ? Géométrique ? Justifier.\n", "\n", "2. À l'aide de l'outil de votre choix (calculatrice, Python, tableur) :\n", "\n", " a. Déterminer une valeur approchée de $u_{15}$ à $10^{-6}$ près.\n", "\n", " b. Que remarque-t-on lorsque l'on soustrait $6$ à chaque terme de la suite $u$ ?\n", "\n", "3. Soit $(v_n)$ la suite définie sur $\\mathbb{N}$ par $v_n = u_n - 6$.\n", "\n", " a. Démontrer que $(v_n)$ est une suite géométrique.\n", "\n", " b. Exprimer $v_n$, puis $u_n$ en fonction de $n$.\n", "\n", " c. Retrouver alors $u_{15}$.\n", "\n", "4. Calculer $S = \\sum\\limits_{i=0}^{20} v_i$ et $T = \\sum\\limits_{i=0}^{20} u_i$.\n", "\n", "5. Compléter la fonction Python suivante pour qu'elle renvoie le terme de rang $n$ de la suite $(u_n)$ :" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def u(n):\n", " u = ...\n", " for i in range(..., ..., ...):\n", " u = ...\n", " return ..." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "6. En utilisant la fonction Python ci-dessus, retrouver le résultat conjecturé à la question 2." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Vos tests ici" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1-17 : Suite homographique\n", "\n", "**Remarque :** une suite homographique est une suite vérifiant une relation de récurrence du type\n", "\n", "$$\n", "u_{n+1} = \\dfrac{a u_n + b}{c u_n + d} \\quad \\text{avec} \\quad c \\neq 0 \\quad \\text{et} \\quad ad - bc \\neq 0\n", "$$\n", "\n", "Soit $(u_n)$ la suite définie sur $\\mathbb{N}$ par\n", "\n", "$$\n", "\\left\\{\n", "\\begin{array}{l}\n", "u_0 = 1 \\\\\n", "u_{n+1} = \\dfrac{u_n}{1 + u_n}\n", "\\end{array}\n", "\\right.\n", "$$\n", "\n", "1. Conjecturer le sens de variation et la limite de $(u_n)$.\n", "\n", "2. Pour tout entier naturel $n$, on pose $v_n = \\dfrac{1}{u_n}$.\n", "\n", " a. Montrer que la suite $(v_n)$ est arithmétique.\n", "\n", " b. En déduire une expression de $v_n$, puis de $u_n$ en fonction de $n$.\n", "\n", " c. Justifier les conjectures de la question 1.\n", "\n", "3. a. Compléter la fonction Python ci-dessous permettant de déterminer le plus petit indice $n$ tel que $u_n < 10^{-p}$ :" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "def seuil(p):\n", " u = ...\n", " n = ...\n", " while u >= 10**(-p):\n", " u = ...\n", " n = n + 1\n", " return n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "b. Utiliser cette fonction pour déterminer le plus petit indice $n$ tel que $u_n < 0{,}01$." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "# Vos tests ici" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1-19 : Avec des listes\n", "\n", "On considère les deux algorithmes suivants. Déterminer le rôle de chacun d'eux.\n", "\n", "**Algorithme A :**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "n = int(input(\"n=\"))\n", "u = []\n", "for i in range(0, n+1):\n", " u.append(2*i**2 - 3*i + 1)\n", "print(u)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Algorithme B :**" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "n = int(input(\"n=\"))\n", "u0 = float(input(\"u0=\"))\n", "u = [u0]\n", "for i in range(1, n+1):\n", " u.append(2*u[i-1]**2 - 3*u[i-1] + 1)\n", "print(u)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Votre réponse :* " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1-20 : Somme de termes consécutifs\n", "\n", "1. Soit $(u_n)$ la suite arithmétique de raison $3{,}1$ et de premier terme $u_0 = 2{,}7$.\n", "\n", " Pour calculer $S_n = u_0 + u_1 + \\ldots + u_n$, on utilise la fonction incomplète écrite en Python ci-dessous :" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def somme1(n):\n", " U = 2.7\n", " S = ...\n", " for i in range(1, ...):\n", " U = U + 3.1\n", " S = ...\n", " return ..." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "a. Compléter cette fonction.\n", "\n", "b. Que saisir dans la cellule suivante pour obtenir la somme $S_{21}$ ?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Votre appel ici" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "2. On considère la fonction écrite en Python ci-dessous :" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def somme2(u0, r, M):\n", " T = 0\n", " U = u0\n", " while U <= M:\n", " T = T + U\n", " U = U + r\n", " return T" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "À l'aide de ce programme, que saisir pour obtenir la somme $T = 10 + 13 + 16 + \\ldots + 145$ ? Déterminer cette somme." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Votre appel ici" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Exercice 1-21 : Algorithme de seuil – proportion de filles\n", "\n", "Un concours scientifique est organisé depuis 2021. Les filles ne représentaient alors qu'un quart des participants.\n", "\n", "Entre 2021 et 2025, on a constaté une augmentation moyenne annuelle de la proportion des filles participant à ce concours de 12 %.\n", "\n", "On extrapole que la proportion de filles va continuer de progresser ainsi pendant 10 ans.\n", "\n", "1. a. Quelle était la proportion de filles en 2022 ?\n", "\n", " b. Pour tout entier naturel $n$, on note $p_n$ la proportion de filles de l'année $2021 + n$.\n", "\n", " Pour $n < 10$, exprimer $p_{n+1}$ en fonction de $p_n$.\n", "\n", " c. En déduire la nature de la suite $(p_n)$.\n", "\n", "2. On considère la fonction `Proporfilles` écrite en Python ci-dessous :" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def Proporfilles(t):\n", " p = 0.25\n", " n = 0\n", " while p < t:\n", " p = 1.12 * p\n", " n = n + 1\n", " return n + 2021" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Quelle est la valeur de `Proporfilles(0.5)` ? Interpréter ce résultat." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# Votre appel ici" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.5" } }, "nbformat": 4, "nbformat_minor": 5 }