{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# %%\n", "import math\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline \n", "\n", "xs = []\n", "hs = []\n", "\n", "for x in range(11, 320):\n", " p1 = 1 / (x / 10)\n", " h = p1 * math.log2(p1)\n", "\n", " p = (1 - p1) / 31\n", " for i in range(31):\n", " h += p * math.log2(p)\n", "\n", " xs.append(x / 10)\n", " hs.append(-h)\n", "\n", "plt.plot(xs, hs)\n", "plt.show()" ] } ], "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.5.6" } }, "nbformat": 4, "nbformat_minor": 1 }