{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### Előadás anyag\n", "Nézzük meg az 5. heti előadás anyagát tartalmazó Jupyter notebook (05_ea.ipynb) tartalmát! Futtassuk az egyes cellákat, módosítsunk, kisérletezzünk szabadon!" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Egy hallgatói adatnyilvántartás\n", "Készítsünk megfelelő adatszerkezete(ke)t egy hallgatói adatnyilvántartáshoz! A megkötéseket több lépésben adjuk meg, így a megoldások is több lépésben készíthetők el (mindig csak az adott lépésre fókuszálva)!\n", "1. Egy hallgató adatai: név, Neptun kód, érdemjegyek. Minden hallgató ugyanazokat a tárgyakat tanulja (pl. 3 db tárgyat) és egy tárgyból mindenkinek pontosan egy db jegye van. \n", "2. Legyen több (pl. két) hallgató a nyilvántartásban!\n", "3. A tárgyaknak legyenek nevei!\n", "4. A Neptun kód csak egyedi lehessen!\n", "5. A hallgatók tanulhassanak különböző tárgyakat!\n", "6. A hallgatók egy tárgyból több jegyet is kaphassanak!\n", "7. A hallgatóknak lehessenek kedvenc tárgyai!\n", "8. A hallgatók egyes adatait ne indexekkel, hanem nevekkel (Név, Neptun kód, Jegyek, Kedvencek) lehessen hivatkozni!" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Feladatok\n", "Készítsünk programokat az alábbi feladatokra! A megoldásoknál csak a tananyagban eddig elhangzott ismereteket használjuk!\n", "- Határozzuk meg egy sztring különböző karaktereinek számát!\n", "- Generáljunk véletlenszerűen ötöslottó számokat, azaz 5 db különböző egész számot az [1, 90] intervallumból!\n", "- Generáljuk az $1, 2, ..., n$ számoknak egy véletlenszerű permutációját/sorrendjét!\n", "- Adott $n$ személy életkora és testsúlya, amelyek egész számok. Határozzuk meg az egyes életkorokra vonatkozó átlagos testsúly értékeket! " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The number of different letters in the string is: 24\n", "Ez egy lottószám: 64\n", "Ez egy lottószám: 1\n", "Ez egy lottószám: 6\n", "Ez egy lottószám: 15\n", "Ez egy lottószám: 30\n", "[2, 1, 3, 9, 5, 10, 8, 6, 4, 7]\n" ] } ], "source": [ "text = \"Tis is a string with several andeven some more text inside, so we can decide how many different letters are used in it!\"\n", "\n", "print(f\"The number of different letters in the string is: {len(set(text))}\")\n", "\n", "import random\n", "\n", "lotto = set()\n", "while len(lotto) < 5:\n", " lotto.add(random.randint(1, 90))\n", "\n", "print('\\n'.join(['Ez egy lottószám: '+ str(i) for i in lotto]))\n", "\n", "\n", "#veletlen sorrend:\n", "numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n", "random.shuffle(numbers)\n", "print(numbers)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Házi feladat\n", "- 'Gyúrjuk egybe' a hallgatói adatnyilvántartás lépéseit, azaz készítsünk olyan adatstruktúrát, ami az összes felmerült igényt képes 'kiszolgálni'!" ] } ], "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.12.3" } }, "nbformat": 4, "nbformat_minor": 2 }