{"cells":[{"metadata":{},"cell_type":"markdown","source":"![En tête general](https://raw.githubusercontent.com/PythonLycee/PyLyc/master/img/En_tete_general.png)\n\n\n© Copyright Franck CHEVRIER 2019-2022 https://www.python-lycee.com.
\nLes activités partagées sur Capytale sont sous licence Creative Commons.\n\n Pour exécuter une saisie Python, sélectionner la cellule et valider avec SHIFT+Entrée.\n"},{"metadata":{},"cell_type":"markdown","source":"# Approximation de $\\pi$ par la méthode d'Archimède (Corrigé)\n"},{"metadata":{},"cell_type":"markdown","source":"### Sommaire\n\n1. Description de la méthode et implémentation en langage Python
\n2. Complément : Démonstrations des formules
\n\n"},{"metadata":{},"cell_type":"markdown","source":"## 1. Description de la méthode et implémentation en langage Python"},{"metadata":{},"cell_type":"markdown","source":"
\nLe but de cette activité est d'obtenir un encadrement de $\\pi$ par la méthode d'Archimède.

\n On considère un cercle $\\mathcal{C}$ de rayon $\\displaystyle \\frac{1}{2}$.
\n$n$ étant un entier supérieur ou égal à $3$, on construit :\n\nOn note respectivement $u_n$ et $v_n$ les longueurs des côtés de ces polygones, et $p_n$ et $q_n$ leurs périmètres.\n

\n
\nActiver la cellule Python ci-dessous pour obtenir une figure dynamique illustrant la situation.\n"},{"metadata":{"scrolled":false,"trusted":false},"cell_type":"code","source":"#Sélectionner cette zone puis SHIFT+ENTREE\nfrom IPython.display import HTML ; HTML(\"\"\"\"\"\")","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"1.1. Déterminer la valeur exacte de la circonférence du cercle $\\mathcal{C}$.\n\n
\nLe cercle $\\mathcal{C}$ a pour rayon $\\displaystyle r=\\frac{1}{2}$ donc sa circonférence vaut $2\\pi r=\\pi$."},{"metadata":{},"cell_type":"markdown","source":"1.2. Démontrer que pour tout $n \\geq 3$ ; $\\displaystyle u_n= \\sin{\\left( \\frac{\\pi}{n} \\right)}$ et $\\displaystyle v_n= \\tan{\\left( \\frac{\\pi}{n} \\right)}$.
\n$\\quad\\;\\;$En déduire que pour tout $n \\geq 3$ ; $\\displaystyle p_n= n \\sin{\\left( \\frac{\\pi}{n} \\right)}$ et $\\displaystyle q_n= n \\tan{\\left( \\frac{\\pi}{n} \\right)}$.
\n\n
\nSi on considère un triangle formé par la moitié d'un côté du polygone intérieur à $n$ côtés et le centre du cercle, ce triangle est rectangle et l'application des formules de trigonométrie du triangle donne en particulier : $\\displaystyle\\sin\\Big(\\frac{\\pi}{n}\\Big)=\\frac{ \\frac{u_n}{2} }{ \\frac{1}{2} }=u_n$.
\nSi on considère un triangle formé par la moitié d'un côté du polygone extérieur à $n$ côtés et le centre du cercle, ce triangle est rectangle et l'application des formules de trigonométrie du triangle donne en particulier : $\\displaystyle\\tan\\Big(\\frac{\\pi}{n}\\Big)=\\frac{ \\frac{v_n}{2} }{ \\frac{1}{2} }=v_n$.
\nComme le polygone intérieur a $n$ côtés de même longueur, on a $\\displaystyle p_n=n\\times u_n=n\\sin\\Big(\\frac{\\pi}{n}\\Big)$. De la même façon, on a $\\displaystyle q_n=n\\times v_n=n\\tan\\Big(\\frac{\\pi}{n}\\Big)$. \n
"},{"metadata":{},"cell_type":"markdown","source":"1.3. Calculer les valeurs exactes de $p_3$ et $q_3$.\n\n
\n\n$\\displaystyle p_3=3\\sin\\Big(\\frac{\\pi}{3}\\Big)=\\frac{3\\sqrt{3}}{2}$
\n$\\displaystyle q_3=3\\tan\\Big(\\frac{\\pi}{3}\\Big)=3\\sqrt{3}$\n
"},{"metadata":{},"cell_type":"markdown","source":"
\n\nOn admet maintenant que :
\n\n
\n
\nAinsi, les formules de $p_n$ et $q_n$ obtenues en 1.2. permettraient d'encadrer $\\pi$, mais utiliser ces formules pour obtenir cet encadrement manquerait de cohérence puisqu'elles nécessitent elles-mêmes l'utilisation de cette valeur $\\pi$.

\nIl faut donc disposer d'une méthode de calculs de termes de ces suites qui ne nécessite pas la connaissance et l'utilisation de la valeur $\\pi$. En particulier, les formules qui suivent établissent un lien entre les périmètres des polygones à $2n$ côtés et les périmètres des polygones à $n$ côtés construits à l'aide de la méthode d'Archimède.


\nOn admet dans cette partie(*) que les suites $(p_n)_{n \\geq 3}$ et $(q_n)_{n \\geq 3}$ vérifient les formules :\n\n \n
\n$\\quad\\quad$(*) Les démonstrations de ces résultats sont proposées dans la partie 2."},{"metadata":{},"cell_type":"markdown","source":"1.4. À l'aide de ces formules, calculer les valeurs exactes de $p_6$ et $q_6$, puis en donner des valeurs approchées.
\n$\\quad\\;\\;$Comparer avec les valeurs fournies par la figure dynamique.\n
\n\n
\n\n$\\displaystyle q_6=q_{2\\times 3}=\\frac{2 p_3 q_3}{p_3+q_3}=\\frac{2 \\frac{3\\sqrt{3}}{2} \\times 3\\sqrt{3}}{\\frac{3\\sqrt{3}}{2}+3\\sqrt{3}}=\\frac{54}{9\\sqrt{3}}=\\frac{6}{\\sqrt{3}}=2\\sqrt{3} \\approx 3,464$
\n$p_6=p_{2\\times 3} = \\sqrt{ p_3 q_{6} } = \\sqrt{ \\frac{3\\sqrt{3}}{2} \\times 2\\sqrt{3} } = 3$ \n
"},{"metadata":{},"cell_type":"markdown","source":"1.5.a. Écrire une fonction Python etape_Archimede:\n\n$\\quad\\;\\;$Aide : L'import from math import sqrt permet d'utiliser la fonction Python sqrt pour calculer une racine carrée."},{"metadata":{"trusted":false},"cell_type":"code","source":"from math import sqrt # import de la fonction sqrt\n\n#Écrire ici la fonction etape_Archimede\n\ndef etape_Archimede(p,q):\n \"\"\"\n fonction qui applique une étape de l'algorithme d'Archimède:\n calcul des périmètres des polygones ayant deux fois plus de côtés que les précédents\n \"\"\" \n q = 2*p*q/(p+q) # ! Attention à l'ordre des instructions !\n p = sqrt(p*q) # ! Ici le calcul de p se fait avec la nouvelle valeur de q !\n return p,q \n","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"$\\quad$b. Effectuer des saisies Python pour stocker les valeurs $p_3$ et $q_3$, puis calculer les valeurs $p_6$ et $q_6$ à l'aide de la fonction etape_Archimede.
\n$\\quad\\;\\;\\;$Comparer avec les résultats de la question 1.4.

\n$\\quad\\;\\;\\;$Aide : On peut utiliser la syntaxe p,q = etape_Archimede(p,q)."},{"metadata":{"trusted":false},"cell_type":"code","source":"#Effectuer ici les saisies\np = 3*sqrt(3)/2\nq = 3*sqrt(3)\n\np,q","execution_count":null,"outputs":[]},{"metadata":{"trusted":false},"cell_type":"code","source":"p,q = etape_Archimede(p,q)\n\np,q","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"1.6.a. Écrire une fonction Python Archimede :\n\n\n$\\quad\\;\\;$Aide : On utilisera une boucle pour répéter l'appel à la fonction etape_Archimede."},{"metadata":{"trusted":false},"cell_type":"code","source":"# Écrire ici la fonction Archimede\n\ndef Archimede(h):\n \"\"\"\n fonction qui renvoie un encadrement de pi d'amplitude inférieur à h\n \"\"\"\n p = 3*sqrt(3)/2\n q = 3*sqrt(3)\n\n while q-p>=h:\n p,q = etape_Archimede(p,q)\n return p,q\n","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"$\\quad$b. À l'aide d'un appel à la fonction Archimede, donner un encadrement de $\\pi$ à $10^{-12}$ près."},{"metadata":{"trusted":false},"cell_type":"code","source":"#Effectuer ici un appel à la fonction Archimede\nArchimede(10**-12)","execution_count":null,"outputs":[]},{"metadata":{},"cell_type":"markdown","source":"

\n\n## 2. Complément : Démonstrations des formules\n\n
\n
\nLe but de cette partie est de démontrer que les suites $(p_n)_{n \\geq 3}$ et $(q_n)_{n \\geq 3}$ telles que $\\displaystyle p_n= n \\sin{\\left( \\frac{\\pi}{n} \\right)}$ et $\\displaystyle q_n= n \\tan{\\left( \\frac{\\pi}{n} \\right)}$ vérifient les formules utilisées dans la partie 1, c'est à dire :\n\n \n
\n"},{"metadata":{},"cell_type":"markdown","source":"
\n On admettra et on utilisera les formules de duplication suivante :\n \n On rappelle également que :\n \n \n \n
"},{"metadata":{},"cell_type":"markdown","source":"2.1. Démontrer que $\\displaystyle \\forall x\\in \\mathbb{R} - \\Big\\{ \\frac{\\pi}{2}+k\\pi \\; ; \\; k\\in \\mathbb{Z} \\Big\\}$ ; $\\quad 2\\sin^2 (x) - \\sin (2x) \\tan (x) = 0 $.
\n$\\quad\\;$ En déduire que $p_{2n} = \\sqrt{ p_n q_{2n} }$.\n
\n

\n \n$\\displaystyle \\forall x\\in \\mathbb{R} - \\Big\\{ \\frac{\\pi}{2}+k\\pi \\; ; \\; k\\in \\mathbb{Z} \\Big\\}$ ; $ \\displaystyle 2\\sin^2 (x) - \\sin (2x) \\tan (x) = 2\\sin^2 (x) - 2\\cos(x)\\sin(x)\\frac{\\sin(x)}{\\cos(x)} = 2\\sin^2 (x) - 2\\sin^2 (x) =0 $
\nPour $n \\geq 3$, on a $\\displaystyle \\frac{\\pi}{2n} \\notin \\Big\\{ \\frac{\\pi}{2}+k\\pi \\; ; \\; k\\in \\mathbb{Z} \\Big\\}$ donc en prenant $\\displaystyle x=\\frac{\\pi}{2n}$ dans la formule précédente, on obtient :
\n$\\displaystyle 2\\sin^2 \\left(\\frac{\\pi}{2n}\\right) - \\sin \\left(\\frac{\\pi}{n}\\right) \\tan \\left(\\frac{\\pi}{2n}\\right) =0$ et en multipliant par $2n^2$:
\n$\\displaystyle 4n^2\\sin^2 \\left(\\frac{\\pi}{2n}\\right) - n\\sin \\left(\\frac{\\pi}{n}\\right)\\times 2n\\tan \\left(\\frac{\\pi}{2n}\\right) =0$
\nc'est à dire $p_{2n}^2 = p_n q_{2n}$ et comme $p_{2n} \\geq 0$, on en déduit que : $p_{2n} = \\sqrt{ p_n q_{2n} }$ \n
\n"},{"metadata":{},"cell_type":"markdown","source":"2.2. Démontrer successivement que pour tout $\\displaystyle x\\in \\mathbb{R} - \\Big\\{ \\frac{\\pi}{4} +k\\frac{\\pi}{2} \\; ; \\; k\\in \\mathbb{Z} \\Big\\}$:\n \n$\\;\\;$ En déduire que $\\displaystyle q_{2n}=\\frac{2p_n q_n}{p_n+q_n}$\n\n

\n\n \nPour $n \\geq 3$, on a $\\displaystyle \\frac{\\pi}{2n} \\notin \\Big\\{ \\frac{\\pi}{4}+k\\frac{\\pi}{2} \\; ; \\; k\\in \\mathbb{Z} \\Big\\}$ donc en prenant $\\displaystyle x=\\frac{\\pi}{2n}$ dans la formule précédente, on obtient :
\n$\\displaystyle \\frac{\\sin \\Big(\\frac{\\pi}{n}\\Big) \\tan \\Big(\\frac{\\pi}{n}\\Big) }{\\sin \\Big(\\frac{\\pi}{n}\\Big) +\\tan \\Big(\\frac{\\pi}{n}\\Big) }=\\tan \\Big(\\frac{\\pi}{2n}\\Big) $ et en multipliant par $\\displaystyle \\frac{2n^2}{n}=2n$ :
\n$\\displaystyle \\frac{2n\\sin \\Big(\\frac{\\pi}{n}\\Big) n\\tan \\Big(\\frac{\\pi}{n}\\Big) }{n\\sin \\Big(\\frac{\\pi}{n}\\Big) +n\\tan \\Big(\\frac{\\pi}{n}\\Big) }=2n\\tan \\Big(\\frac{\\pi}{2n}\\Big) $
\nc'est à dire $\\displaystyle \\frac{2 p_n q_n}{p_n+q_n}=q_{2n}$. \n
"},{"metadata":{},"cell_type":"markdown","source":"![Archimède](https://raw.githubusercontent.com/PythonLycee/PyLyc/master/img/archimède.jpg) \n\n
Archimède (env. 287 av. JC - 212 av. JC)
"},{"metadata":{},"cell_type":"markdown","source":"© Copyright Franck CHEVRIER 2019-2022 https://www.python-lycee.com.
\nLes activités partagées sur Capytale sont sous licence Creative Commons.\n

\nDernière modification de l'activité : Juillet 2022"}],"metadata":{"celltoolbar":"Raw Cell Format","kernelspec":{"display_name":"Python 3","language":"python","name":"python3"}},"nbformat":4,"nbformat_minor":2}