{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Valószínűségszámítás pythonnal\n",
    "\n",
    "A következőkben arra láthatunk példákat, hogy akár pszeudó-véleltlenszám generálásával is hasonló eredményre juthatunk, mint azt a valószínűség számítás során megtanulhattuk.\n",
    "\n",
    "Többek között mintapéldákat oldunk meg Harmati István vizsgái közül:\n",
    "\n",
    "[www.sze.hu/~harmati/valszam/vizsga/valszamBSC_mintavizsga.pdf](http://www.sze.hu/~harmati/valszam/vizsga/valszamBSC_mintavizsga.pdf)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Pénzérme dobása\n",
    "\n",
    "Dobjunk fel (virtuálisan) egy pénzérmét - mondjuk 500-szor - és számoljuk meg, mekkora a fejek aránya. (Értelemszerűen 0,5-hez kell konvergálnia, de nézzük meg ezt egy plot segítségével is)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline\n",
    "# hányszor ismételjük?\n",
    "db = 500\n",
    "# dobások db számosságú array, 0 vagy 1 (diszkrét, egyenletes eloszlás)\n",
    "dobasok = np.random.randint(2, size=db)\n",
    "for i in range(1, db):\n",
    "    plt.plot(i, np.sum(dobasok[0:(i+1)]) / i, \"b*\")\n",
    "plt.grid(True)\n",
    "plt.ylim(0, 1)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Példa\n",
    "\n",
    "Példa az előbb említettek közül:\n",
    "[www.sze.hu/~harmati/valszam/vizsga/valszamBSC_mintavizsga.pdf](http://www.sze.hu/~harmati/valszam/vizsga/valszamBSC_mintavizsga.pdf)\n",
    "\n",
    "Egy dobozban 20 fehér golyó van. Egy szabályos dobókockával dobunk, majd a következőt tesszük: \n",
    " - ha a dobott szám 1, 2 vagy 3, akkor tíz golyót cserélünk ki pirosra; \n",
    " - ha a dobott szám 4 vagy 5, akkor hat golyót cserélünk pirosra; \n",
    " - ha a dobott szám 6, akkor tizenkét golyót cserélünk pirosra. \n",
    "\n",
    "Ezután véletlenszerűen húzunk egy golyót a dobozból.\n",
    " - a) Mi a valószínűsége annak, hogy pirosat húzunk? (0,45) \n",
    " - b) Feltéve, hogy pirosat húztunk, mi a valószínűsége, hogy hatost dobtunk? (2/9 ≈ 0,2222)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "A válasz: 0.4480 (100000 dobásnál, minél nagyobb szám, annál jobban közelíti a 0,45-t) \n",
      "B válasz: 0.2225 (100000 dobásnál, minél nagyobb szám, annál jobban közelíti a 0,2222-t) \n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "\n",
    "\n",
    "# hányszor ismételjük?\n",
    "db = 100000\n",
    "\n",
    "# dobások db számosságú array, 1-6 között (diszkrét, egyenletes eloszlás)\n",
    "dobasok = np.random.randint(6, size=db) + 1\n",
    "\n",
    "eredmeny_a = 0\n",
    "eredmeny_b = 0\n",
    "# darabszám, feltéve, hogy pirosat húztunk \n",
    "db_piros = 0\n",
    "\n",
    "for d in dobasok:\n",
    "    # False = Fehér\n",
    "    # True = Piros\n",
    "    golyok = np.full((20), False, dtype=bool)\n",
    "    if d == 1 or d == 2 or d == 3:\n",
    "        golyok[0:10] = True\n",
    "    elif d == 4 or d == 5:\n",
    "        golyok[0:6] = True\n",
    "    else:\n",
    "        golyok[0:12] = True\n",
    "    huzas = golyok[np.random.randint(20)]   \n",
    "    eredmeny_a += huzas\n",
    "    # Ha pirosat húztunk\n",
    "    if huzas == True:\n",
    "        db_piros += 1\n",
    "        if d == 6:\n",
    "            eredmeny_b += 1\n",
    "\n",
    "print(\"A válasz: %.4f (%d dobásnál, minél nagyobb szám, annál jobban közelíti a 0,45-t) \" % (eredmeny_a / db, db))\n",
    "print(\"B válasz: %.4f (%d dobásnál, minél nagyobb szám, annál jobban közelíti a 0,2222-t) \" % (eredmeny_b / db_piros, db))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### _Used sources_ / Felhasznált források\n",
    "- [Shannon Turner: Python lessons repository](https://github.com/shannonturner/python-lessons) MIT license (c) Shannon Turner 2013-2014\n",
    "- [Siki Zoltán: Python mogyoróhéjban](http://www.agt.bme.hu/gis/python/python_oktato.pdf) GNU FDL license (c) Siki Zoltán\n",
    "- [BME AUT](https://github.com/bmeaut) MIT License Copyright (c) BME AUT 2016-2018"
   ]
  }
 ],
 "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.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}