{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "![En tête general](img/En_tete_general.png)\n", "\n", "\n", "*(C) Copyright Franck CHEVRIER 2019-2020 http://www.python-lycee.com/*\n", "\n", " Pour exécuter une saisie Python, sélectionner la cellule et valider avec SHIFT+Entrée.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Le Banquier et le Savetier (corrigé) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "![Illustration Banquier Savetier](img/Banquier_Savetier.png)\n", "\n", "Le banquier, M Malin, rencontre le savetier, M Circonspect.\n", "\n", "M Circonspect lui propose un marché :\n", "« Ce mois ci, qui compte 31 jours, je te propose le marché suivant :\n", "Je te verse :\t20 000 € le 0ème jour (aujourd’hui), \n", "\t\t30 000 € le 1er jour, \n", "\t\t40 000 € le 2ème jour\n", "\t\t… etc… en ajoutant 10 000€ chaque jour.\n", "En échange, tu me donnes :\n", "\t\t1 € le 0ème jour, \n", "\t\t2 € le 1er jour, \n", "\t\t4 € le 2ème jour, \n", "\t\t8 € le 3ème jour,\n", "\t\t… etc… en doublant à chaque fois ce que tu m’as donné la veille. \n", "L’engagement dure sur un mois, es-tu prêt à signer le contrat ? ».\n", "\n", "« Quel imbécile ! » se dit M Malin, qui accepta sans sourciller le contrat.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__1. Expliquer ce que renvoient les fonctions ci-dessous.__" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "def C(n):\n", " a=20000\n", " for k in range(n):\n", " a = a+10000\n", " return a\n", "\n", "def cherche():\n", " n=0\n", " while C(n)<150000:\n", " n=n+1\n", " return n" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "scrolled": false }, "outputs": [ { "data": { "text/plain": [ "(160000, 13)" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "C(14) , cherche()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__2- Écrire une fonction M donnant la somme versée par M Malin le n ème jour.__" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "def M(n):\n", " a=1\n", " for k in range(n):\n", " a = a*2\n", " return a" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "16384" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "M(14)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__3- Écrire une fonction donnant le jour à partir duquel M Malin verse plus que M Circonspect.__" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "def Comp(C,M):\n", " n=0\n", " while C(n)>M(n):\n", " n=n+1\n", " return n" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "18" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Comp(C,M)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "__4- Écrire une fonction donnant la somme versée en tout par M Circonspect le n ème jour.__" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [], "source": [ "# Ecrire la fonction\n", "def somme(C,n):\n", " S=0\n", " for k in range(n+1):\n", " S=S+C(k)\n", " return S" ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "1350000" ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Tester la fonction\n", "somme(C,14)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*__Répondre aux questions 5,6,7 en utilisant/modifiant les fonctions précédentes.__*\n", "\n", "\n", " \n", "__5- Déterminer le premier jour au bout duquel M Circonspect versera plus de 125000 €.__\n", "\n", "\n", " \n", "__6- Déterminer le premier jour au bout duquel M Malin versera plus de 180000 €.__\n", "\n", "\n", " \n", "__7- Déterminer la somme versée en tout par M Malin le 15 ème jour.__" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(11, 18, 65535)" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# On peut adapter la fonction cherche:\n", "\n", "def cherche2(C,seuil):\n", " n=0\n", " while C(n) Alcuin (au centre) (735-804) a écrit un recueil d'exercices mathématiques, où apparaissait l'équivalent de la notion de suite géométrique de raison 2." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*(C) Copyright Franck CHEVRIER 2019-2020 http://www.python-lycee.com/*\n" ] } ], "metadata": { "celltoolbar": "Raw Cell Format", "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.7.10" } }, "nbformat": 4, "nbformat_minor": 2 }