{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Simulation et évaluation\n", "\n", "Dans ce TP les consignes en orange correspondent à consignes qui seront évaluées. Comme d'habitude, vous avez tout à faire le droit d'échanger avec vos voisins et d'aller chercher des informations dans les TPs précédents.\n", "\n", "## Echauffement et pyramide\n", "\n", "D'après wikipedia:\n", "\n", " La pyramide de Khéops ou grande pyramide de Gizeh est un monument construit par les Égyptiens de l'Antiquité, formant une pyramide à base carrée. Tombeau présumé du pharaon Khéops, elle fut édifiée il y a plus de 4 500 ans, sous la IVe dynastie, au centre du complexe funéraire de Khéops se situant à Gizeh en Égypte. \n", " \n", " Ce monument forme une pyramide à base carrée de 440 coudées royales anciennes, soit environ 230,5 mètres. Il est constitué d'environ 2 000 000 blocs de pierre calcaire d'environ 2,5tonnes chacuns. \n", " \n", "\n", "
\n", "Ecrire un programme qui présente cette pyramide. Il devra aussi calculer la périmètre de la base de la pyramide ainsi qu'une estimation de son poid total.\n", " \n", "Critères d'évaluations:\n", "\n", " Sauver votre programme dans \"Devoirs\" en le nommant nom-prénom-pyramide.py (Mettre les 2 noms de familles si vous travaillez à 2).\n", "
\n", "\n", "" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Simulation de dés\n", "\n", "- [ ] Copier-coller le bloc le programme suivant. Puis commenter (avec #) pour expliquer ce que fait chaque ligne." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from random import randint # Import de randint qui génère un entier aléatoire entre 2 nombres.\n", "print(\"--- Simulateur de lancer de dés ---\")\n", "print(\"Première situation\")\n", "de1 = randint(1, 6)\n", "de2 = randint(1, 10)\n", "resulat1 = de1 * de2\n", "print(\"La première situation donne\", resulat1)\n", "print(\"Deuxième situation\")\n", "resulat2 = randint(1, 8) * randint(1, 8)\n", "print(\"La deuxième situation donne\", resulat2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "Transformer le programme pour qu'il simule les deux situations suivantes:\n", "\n", "
\n", "Vous ètes invités à apporter toutes les améliorations qui vous semblent interessantes.\n", "
\n", "
\n", "Vous serez noté suivant les critères suivants:\n", "\n", " Sauver votre programme dans \"Devoirs\" en le nommant nom-prénom-simlulation.py (Mettre les 2 noms de familles si vous travaillez à 2).\n", "
\n", " \n", "- [ ] Copier-coller le bloc à la suite. Puis commenter." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "if resulat1 > resulat2:\n", " print(\"La première situation gagne\")\n", "else:\n", " print(\"La deuxième situation gagne\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "- [ ] Quelle situation semble donner le score le plus grand?\n", "- [ ] Ouvrir un nouveau fichier, copier-coller le programme suivant puis commenter chaque ligne pour expliquer son fonctionnement." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "from random import randint\n", "\n", "print(\"--- Simulateur de lancer de dés ---\")\n", "\n", "for i in range(10):\n", " print(\"---------------------\")\n", " print(\"# Simulation numéro\", i+1)\n", " \n", " print(\"Première situation\")\n", " de1 = randint(1, 6)\n", " de2 = randint(1, 10)\n", " resulat1 = de1 * de2\n", " print(\"La première situation donne\", resulat1)\n", " \n", " print(\"Deuxième situation\")\n", " resulat2 = randint(1, 8) * randint(1, 8)\n", " print(\"La deuxième situation donne\", resulat2)\n", " \n", " if resulat1 > resulat2:\n", " print(\"-> La première situation gagne.\")\n", " else:\n", " print(\"-> La deuxième situation gagne.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "Pour chaque problème qui suit, avant de vous lancer dans sa résolution, réfléchissez à la réponse que vous donneriez intuitivement.\n", "\n", "---" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Dés de Efrons\n", "\n", "On dispose de 3 dés à 6 faces équilibrés avec les nombres suivants sur leurs faces.\n", "\n", "- A : 1, 6, 11, 12, 13, 14\n", "- B : 2, 3, 4, 15, 16, 17\n", "- C : 5, 7, 8, 9, 10, 18\n", "\n", "**On souhaite savoir si un dé est plus avantageux que les autres.**\n", "
\n", "\n", "**Vous enregistrez votre programme dans Devoirs sous le nom** `nom-prénom-deEfron.py`\n", "\n", "
\n", "\n", "Proposition d'étapes pour répondre à cette question\n", "\n", "1. Simuler le lancer de ces 3 dés.\n", "2. Simuler en même temps les dés A et B. Lequel semble donner le meilleur score?\n", "3. Faire la même chose avec les dés A et C puis avec les dés B et C.\n", "4. Y a-t-il un dé plus fort que les autres?\n", "5. Simuler le lancer des 3 dés en même temps lequel semble le plus fort?\n", "\n", "Astuces pour simuler les lancés de dés:" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "scrolled": true }, "outputs": [], "source": [ "from random import choice\n", "# On définit les valeurs inscrites sur chaque face\n", "deA = [1, 6, 11, 12, 13, 14]\n", "# Python choisi une face au hasard\n", "print(choice(deA))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Les dés des Dudu\n", "\n", "Dans [le problème des dés des Dudu](https://mathix.org/video/problemes_ouverts/PB_DUDU/PBDUDU7-d%C3%A9.mp4), les deux frères ont chacun deux dés différents:\n", "\n", "- Le frère 1: a un dé qui va de 0 à 9 et un dé de 1 à 8.\n", "- Le frère 2: a un dé de 1 à 12 et un dé classique 1 à 6.\n", "\n", "**On veut savoir qui sera le premier à faire 17 en ajoutant le résultat de ses 2 dés.**\n", "\n", "À vous de simuler cette situation pour répondre à la question." ] } ], "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.7.2" } }, "nbformat": 4, "nbformat_minor": 2 }