{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Gain ( somme à addition en plus de la mise de départ si victoire ): \n", "\n", " - Rouge, Noir, Pair, Impair, 1 à 18, 19 à 36 : mise * 1\n", " - à cheval sur 2 colonnes ( moitié des nombres ), douze nombres à cheval ( 1/3 des nombres, 24 ) : mise * 0.5\n", " - colonne, douzaine : mise * 2\n", " - sixain ( six nombres ) : mise * 5\n", " - à cheval sur deux cases : mise * 17\n", " - un seul nombre : mise * 35" ] }, { "cell_type": "code", "execution_count": 292, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[(31, 69), (34, 66), (31, 69), (37, 63), (35, 65), (26, 74), (32, 68), (26, 74), (29, 71), (26, 74), (35, 65), (31, 69), (28, 72), (32, 68), (30, 70), (21, 79), (29, 71), (37, 63), (26, 74), (35, 65)]\n", "moyenne parties gagnée ( stop à 14€ ) : 30.55\n", "moyenne parties perdue ( stop à 14€ ) : 69.45\n" ] } ], "source": [ "import numpy as np\n", "import numpy.random as rd\n", "\n", "\n", "def tirage_num(n):\n", " return rd.randint(0, 36, n)\n", "\n", "def rouge_noir(nb):\n", " rouge = [1, 3, 5, 7, 9, 12, 14, 16, 18, 19, 21, 23, 25, 27, 30, 32, 34, 36]\n", " noir = [2, 4, 6, 8, 10, 11, 13, 15, 17, 20, 22, 24, 26, 28, 29, 31, 33, 35]\n", " if nb in rouge:\n", " return 1\n", " elif nb in noir:\n", " return 2\n", " else:\n", " return 0\n", "\n", "def pair_impair(nb):\n", " if nb % 2 == 0:\n", " return 0\n", " else:\n", " return 1\n", " \n", "def victoire(nb, argent): # on considère que l'on joue à chaque partie 1€ sur rouge et 1€ sur pair\n", " argent -= 2\n", " if(rouge_noir(nb) == 1 and pair_impair(nb) == 0):\n", " argent += 4\n", " elif(rouge_noir(nb) == 1):\n", " argent += 2\n", " elif(pair_impair(nb) == 0):\n", " argent += 2\n", " if(pair_impair(nb) == 1 and rouge_noir(nb) == 2 ):\n", " argent += 0\n", " \n", " return argent\n", "\n", "def partie(cashin,tirage): # cashin = prix auquel on veut stopper la partie, tirage = nombre de tirage par partie\n", " argent_base = 10\n", " max = argent_base\n", " for i in tirage_num(tirage):\n", " if(argent_base > 0 and argent_base < cashin):\n", " argent_base = victoire(i, argent_base)\n", " if(argent_base > max):\n", " max = argent_base\n", " else:\n", " break\n", " return argent_base\n", "\n", "def npartie(n,cashin,tirage): # n = nombre de partie que l'on veut faire, cashin = prix auquel on veut stopper la partie, tirage = nombre de tirage par partie\n", " nb = 0\n", " gagnée = 0\n", " perdue = 0\n", " for i in range(n):\n", " nb = partie(cashin,tirage)\n", " if(nb == cashin):\n", " gagnée += 1\n", " else:\n", " perdue += 1\n", " return gagnée, perdue\n", " \n", "list = []\n", "count = 20\n", "for i in range(count):\n", " list.append(npartie(100,14,10))\n", "\n", "print(list)\n", "\n", "gagnee_moy = 0\n", "perdue_moy = 0\n", "\n", "for i in list:\n", " gagnee_moy += i[0]\n", " perdue_moy += i[1]\n", " \n", "print(\"moyenne parties gagnée ( stop à 14€ ) :\", (gagnee_moy/count))\n", "print(\"moyenne parties perdue ( stop à 14€ ) :\", (perdue_moy/count))\n" ] }, { "cell_type": "code", "execution_count": 282, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "100000\n", "[(58920, 2164, 0), (59370, 2079, 0), (59218, 2149, 0), (58900, 2044, 0), (58853, 2098, 0), (59072, 2033, 0), (58734, 2065, 0), (59130, 2101, 0), (58996, 2050, 0), (58755, 1967, 0), (59134, 2103, 0), (59163, 2022, 0), (59126, 2054, 0), (59237, 2061, 0), (58827, 2051, 0), (59213, 2096, 0), (59056, 1990, 0), (58979, 2077, 0), (58814, 2167, 0), (59021, 2063, 0)]\n", "moyenne parties gagnée ( stop à 12€ ) : 59.0259\n", "moyenne parties perdue ( stop à 12€ ) : 2.0717\n" ] } ], "source": [ "list = []\n", "count = 0\n", "for i in range(20):\n", " list.append(npartie(100000,12,10))\n", " count += 1\n", "\n", "print(list)\n", "\n", "gagnee_moy = 0\n", "perdue_moy = 0\n", "\n", "for i in list:\n", " gagnee_moy += i[0]\n", " perdue_moy += i[1]\n", " \n", "print(\"moyenne parties gagnée ( stop à 12€ ) :\", (gagnee_moy/count)/1000)\n", "print(\"moyenne parties perdue ( stop à 12€ ) :\", (perdue_moy/count)/1000)\n" ] } ], "metadata": { "interpreter": { "hash": "7a9ac839c22f4ef1a703331818f49c39c32798a52e733cd7e7abe47abde9bc75" }, "kernelspec": { "display_name": "Python 3.10.4 64-bit", "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.10.4" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }