2014-2015/Programmation/Projets/récup.ipynb

179 lines
5.4 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Récuperation\n",
"\n",
"\n",
"* [Crypter un message - Cesar](#Crypter-un-message)\n",
"* [Traducteur Shadock](#Traducteur-Shadock)\n",
"\n",
"* [Jeu du Dragon](#Jeu-du-Dragon)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"\n",
"## Jeu du Dragon\n",
"\n",
"Dans ce jeu, le joueur est dans une contree remplie de dragons. Les dragons vivent dans des grandes grottes remplies de tresors. Ils d ́efendent leur tr ́esors et nh ́esitent pas à manger les aventuriers qui sapprocheraient. Le joueur va se trouver face à deux grottes une avec un dragon feroce et une autre ou le dragon est parti à la chasse. Le joueur va devoir choisir la bonne grotte pour ne pas se faire manger.\n",
"\n",
"Pour mettre en place ce jeu nous allons avoir besoin d'utiliser des **fonctions** et de découper le jeu en étapes d'explorations.\n",
"\n",
"### Les fonctions - Expliquer une fois pour toute à l'ordinateur\n",
"\n",
"À force d'écrire des programmes, les programmeurs en ont eu marre d'écrire toujours les mêmes choses et ont inventé les **fonctions**. Les fonctions sont quelques lignes de code qu'il est possible de réutiliser partout dans son programme. Voyons un exemple. \n",
"\n",
"Recopier et tester le programme suivant\n",
"\n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": false
},
"outputs": [
{
"ename": "SyntaxError",
"evalue": "Missing parentheses in call to 'print' (<ipython-input-1-b731a9b823b0>, line 2)",
"output_type": "error",
"traceback": [
"\u001b[1;36m File \u001b[1;32m\"<ipython-input-1-b731a9b823b0>\"\u001b[1;36m, line \u001b[1;32m2\u001b[0m\n\u001b[1;33m print \"Je suis une fonction\"\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m Missing parentheses in call to 'print'\n"
]
}
],
"source": [
"def ditBonjour():\n",
" print \"Je suis une fonction\" \n",
" print \"Et je dis bonjour\"\n",
"\n",
"ditBonjour()\n",
"ditBonjour()\n",
"ditBonjour()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* Que s'est-il passé? Pourquoi a-t-on trois fois le même message?\n",
"* Que se passe-t-il si l'on ajoute ou enlève un des **ditBonjour()**\n",
"* Écrire une fonction **ditAuRevoir** qui affiche un message d'au revoir.\n",
"\n",
"Pour demander quelque chose à l'utilisateur, on peut utiliser la fonction **input**"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": false
},
"outputs": [
{
"ename": "SyntaxError",
"evalue": "Missing parentheses in call to 'print' (<ipython-input-2-9f674d0de3ca>, line 2)",
"output_type": "error",
"traceback": [
"\u001b[1;36m File \u001b[1;32m\"<ipython-input-2-9f674d0de3ca>\"\u001b[1;36m, line \u001b[1;32m2\u001b[0m\n\u001b[1;33m print \"Ah! Tu as \", age, \"ans\"\u001b[0m\n\u001b[1;37m ^\u001b[0m\n\u001b[1;31mSyntaxError\u001b[0m\u001b[1;31m:\u001b[0m Missing parentheses in call to 'print'\n"
]
}
],
"source": [
"age = input(\"Quel age as tu? \")\n",
"print \"Ah! Tu as \", age, \"ans\" "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* Écrire une fonction **demandeNom** qui demande le nom de l'utilisateur et répond \"Bonjour, ...\" (avec le nom à la place des ...)\n",
"\n",
"Pour le moment, nos fonctions ne sont capables de faire qu'une seule et unique chose. Elles ne sont pas capables de s'adapter. On va voir que l'on peut donner des informations aux fonctions."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"def ditBonjourA(nom):\n",
" print \"Je suis une fonction\"\n",
" print \"Et je dis bonjour à \", nom\n",
"\n",
"ditBonjourA(\"Bob\")\n",
"ditBonjourA(\"Monsieur\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"* Pourquoi n'a-t-on pas 2 fois le même message?\n",
"* "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Crypter un message\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Traducteur Shadock\n",
"\n",
"Pour comprendre le soucis des Shadock: [vidéo](https://www.youtube.com/watch?v=nm0cw6b1PMA)\n",
"\n",
"Le but est de construite un convertisseur de nombre Shadock vers des nombres humains et inversement\n",
"\n",
"* Répondre avec un stylot et un crayon à la question posée à la fin de la vidéo."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"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.4.3"
}
},
"nbformat": 4,
"nbformat_minor": 0
}