diff --git a/TST/02_Modelisation_suite/3E_python.ipynb b/TST/02_Modelisation_suite/3E_python.ipynb new file mode 100644 index 0000000..42a9a8b --- /dev/null +++ b/TST/02_Modelisation_suite/3E_python.ipynb @@ -0,0 +1,350 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Python et suites" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Python comme une calculatrice: introduction à Python\n", + "\n", + "Dans les encadrés, il y a du code écrit dans le language python. Pour faire **exécuter** le code, il vous faudra cliquer dessus puis appuyer sur `shift+entrer` de votre clavier. Le résultat du programme s'affichera alors en dessous." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Exécuter le programme ci dessous. Que fait-il?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(\"Bonjour\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "`print(...)` est la fonction python qui fera afficher ce qu'il y a entre parenthèses.\n", + "\n", + "- Dans l'encadré ci-dessous, écrire une programme python pour qu'il affiche votre nom. Attention aux détails!!" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "En plus de savoir afficher des mots, Python peut être utilisé comme calculatrice.\n", + "\n", + "- Exécuter le programme ci-dessous. Que fait-il?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "print(2+2)\n", + "print(4*3)\n", + "print(2+3*5 - (5/2))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Utiliser l'encadré ci-dessous pour calculer u(10) quand u est une suite arithmétique de raison r=4 et de premier terme u(0)=1." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Même questions pour calculer v(6) quand v est une suite géométrique de raison q=1.2 et de premier terme u(0)=10." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Python comme une calculatrice avec mémoire: Variables\n", + "\n", + "Il serait pratique dans le calcul des suites que Python se souvienne du résultat précédent pour faire le calcul d'après.\n", + "\n", + "Pour faire cela, on utilise des **variables** en programmation.\n", + "\n", + "- Exécuter le programme suivant et expliquer ce qui se passe à chaque ligne" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "a = 1\n", + "b = 2\n", + "print(a+b)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Exécuter le programme suivant et expliquer ce qui se passe à chaque ligne" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "u = 1\n", + "print(u)\n", + "u = u + 2\n", + "print(u)\n", + "u = u + 2\n", + "print(u)\n", + "u = u + 2\n", + "print(u)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- En vous inspirant de ce qui a été fait au dessus, calculer u(4) quand u est une suite arithmétique de raison r = -1 et de premier terme u(0) = 10" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Calculer v(15) quand u est une suite géométrique de raison q = 0.8 et de premier terme u(0) = 100" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Pour la nouvelle année, Bob décide d'arrêter de fumer. Pour le moment, il fume 80 cigarettes par semaine. Il souhaite réduire sa consommation de 6 cigarettes par semaine.\n", + "\n", + "- Modéliser la situation avec une suite en précisant la nature, la raison et le premier terme.\n", + "- Combien de cigarettes va-t-il fumer après 5 semaines?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Combien de semaines lui faudra-t-il pour complètement arréter?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Répéter les même calculs: les boucles\n", + "\n", + "On remarque que l'on se répète beaucoup pour faire les calculs. Pour éviter cela, on peut utiliser des **boucles** en python. \n", + "\n", + "Pour le moment nous n'étudierons que les boucles **for**.\n", + "\n", + "Voila comment économiser des lignes de programmes." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "u = 1\n", + "print(u)\n", + "\n", + "u = u + 2\n", + "print(u)\n", + "\n", + "u = u + 2\n", + "print(u)\n", + "\n", + "u = u + 2\n", + "print(u)\n", + "\n", + "u = u + 2\n", + "print(u)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "On remarque d'après les deux premières lignes, les lignes suivantes se répètent 4 fois. Le programme précédent peut alors se réécrire" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "u = 1\n", + "print(u)\n", + "\n", + "for i in range(4):\n", + " u = u + 2\n", + " print(u)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Décrire chaque ligne du programme précédent." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Calculer v(5) puis v(100) quand u est une suite géométrique de raison q = 0.7 et de premier terme u(0) = 100" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "On place 100€ à la banque. Le banquier nous explique que les intérets vont faire augmenter cette somme de 2% par an.\n", + "\n", + "- Par combien va être multiplié cette quantité d'argent chaque année?\n", + "- Modéliser cette situation avec une suite en précisant la nature, la raison et le premier terme.\n", + "- Calculer le solde de ce compte après 10ans" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "- Combien d'année devra-t-on attendre avant que ce solde ne depasse 1000€?" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Mémoriser les façons de calculer: les fonctions" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "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.8.5" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +}