{ "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 for\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": [ "## Répeter jusqu'à ce que: boucle while\n", "\n", "Comme dans la questions précédente, il est interessant de répeter une action **jusqu'à ce que** quelque chose soit validé (dans la question c'était dépasser 1000€). Pour cela, il existe un deuxième type de boucle: **while** (tant que).\n", "\n", "Par exemple, on peut répondre à la question précédente avec le programme suivant:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "117\n" ] } ], "source": [ "u = 100\n", "annee = 0\n", "while u < 1000:\n", " annee = annee + 1\n", " u = u * 1.02\n", "print(annee)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Décrire chaque ligne du programme précédent." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Un transporteur a acheté en 2006 un véhicule de 9tonnes au prix de 50200€. Compte tenu de l'utilisation, le véhicule perd 20% de sa valeur chaque année.\n", "\n", "- Calculer la valeur du véhicule en 2007, 2008." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Modéliser la valeur du véhicule par une suite dont vous préciserez la nature, la raison et le premier terme.\n", "- Quelle sera la valeur du véhicule en 2012?" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- Dans combien d'année, la valeur sera inférieur à 1000€?" ] }, { "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 }