116 lines
3.9 KiB
Plaintext
116 lines
3.9 KiB
Plaintext
{
|
|
"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
|
|
}
|