{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"syracuse.ipynb","version":"0.3.2","provenance":[{"file_id":"1J30Xa1-q8N__ReYzo95iB3s8CevunRed","timestamp":1548477254849}],"collapsed_sections":[]},"kernelspec":{"name":"python3","display_name":"Python 3"}},"cells":[{"metadata":{"id":"oaQYeuLQcGBp","colab_type":"text"},"cell_type":"markdown","source":["# **Suite de Syracuse**\n","\n","On considère la suite $(u_n)$ définie par $u_0=k$ où $k$ est un nombre entier positif et\n","\n","* $u_{n+1}=\\dfrac{1}{2}u_n$ si $n$ est pair\n","\n","* $u_{n+1}=3u_n+1$ si $n$ est impair\n","\n","\n","\n","La conjecture de Syracuse affirme que pour n'importe quelle valeur choisie pour l'entier initial $k$, l'algorithme s'arrête en 1 au bout d'un nombre fini d'itérations.\n","\n","## **PARTIE A étude préliminaire (sur le document papier)**\n","\n","\n","## **PARTIE B programmation avec Python**\n","\n","\n","On a rédigé ci-dessous une fonction Python permettant d'obtenir les termes de la suite de Syracuse associée au choix d'un entier $u_0=k$."]},{"metadata":{"id":"JPzKG0RpesV2","colab_type":"code","colab":{}},"cell_type":"code","source":["def syracuse(k):\n"," liste=[k]\n"," while k!=1:\n"," if k%2==0:\n"," k=k/2\n"," liste.append(k)\n"," else:\n"," k=3*k+1\n"," liste.append(k)\n","\n"," return liste"],"execution_count":0,"outputs":[]},{"metadata":{"id":"Qtr2Xr8afN0k","colab_type":"text"},"cell_type":"markdown","source":["1. Expliquer les lignes 4, 5 et 6 de ce programme"]},{"metadata":{"id":"yKNjHw0ZfWwc","colab_type":"text"},"cell_type":"markdown","source":["Répondre ici:"]},{"metadata":{"id":"iYIltnbkffPS","colab_type":"text"},"cell_type":"markdown","source":["2. Vérifier la liste retournée par la fonction pour $n=11$"]},{"metadata":{"id":"EwIzRClvfp8C","colab_type":"code","colab":{}},"cell_type":"code","source":["# Programme:\n","\n"],"execution_count":0,"outputs":[]},{"metadata":{"id":"5aT79BOuf2VE","colab_type":"text"},"cell_type":"markdown","source":["3. Écrire une fonction $tempsvol$ qui prend en paramètre un entier $k$ et qui retourne le temps de vol de la suite de Syracuse de premier terme $k$."]},{"metadata":{"id":"Jn0JwqdCf4XG","colab_type":"code","colab":{}},"cell_type":"code","source":["# Programme:\n"],"execution_count":0,"outputs":[]},{"metadata":{"id":"5RXt_gqpf7Cj","colab_type":"text"},"cell_type":"markdown","source":["4. Quel est le temps de vol si $u_0= 34~239$ ?"]},{"metadata":{"id":"MDiwLUqWgCmR","colab_type":"text"},"cell_type":"markdown","source":["Répondre ici:"]},{"metadata":{"id":"s38ix-qUgIac","colab_type":"text"},"cell_type":"markdown","source":["5. Écrire une fonction $altmax$ qui prend en paramètre un entier $k$ et qui retourne l'altitude maximale de la suite de Syracuse de premier terme $k$."]},{"metadata":{"id":"a8rjAbDygTA3","colab_type":"code","colab":{}},"cell_type":"code","source":["# Programme:\n","\n"],"execution_count":0,"outputs":[]},{"metadata":{"id":"8k_Mk9pxgWEJ","colab_type":"text"},"cell_type":"markdown","source":["6. Quelle est l'altitude maximale si $u_0= 15$ ?"]},{"metadata":{"id":"oFQ2kNMTgbcC","colab_type":"text"},"cell_type":"markdown","source":["Répondre ici:\n"]},{"metadata":{"id":"AOaY6o-WgiZF","colab_type":"text"},"cell_type":"markdown","source":["7. Écrire une fonction $record$ qui prend en paramètre un entier $N$ et retourne le record d'altitude pour $1