{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Első beadandó\n", "\n", "\n", "Hat feladat van, ahányat sikerül megoldani, annyi lesz a beadandó értéke, de legfeljebb 5. Megoldásként ezt a fájlt kell visszaküldeni kitöltve. Nem elég csak a válaszokat feltüntetni, hagyd benne a fájlban a függvényeket és kódokat, amit a megoldás során használtál. \n", "\n", "- Mindegyik feladat kódolásokhoz fog kapcsolódni. Felteheted, hogy minden szöveg csak a következő karatereket tartalmazza: `hun_alph=['a', 'á', 'b', 'c', 'd', 'e', 'é', 'f', 'g', 'h', 'i', 'í', 'j', 'k', 'l', 'm', 'n', 'o', 'ó', 'ö', 'ő', 'p', 'q', 'r', 's', 't', 'u', 'ú', 'ü', 'ű', 'v', 'w', 'x', 'y', 'z', ' ', '!', ',', '-', '.', ':', '?', ';']`. \n", "- **Helyettesítő ábécé** alatt karakterekből áll halmazok közötti bijekciót értünk. Ezt egy dicitionaryben érdemes tárolni, ahol minden kulcs egy egyedi karakter és minden érték is az. Pl: `{'a':'b','x':'y'}`\n", "- A programoknak úgy kell működniük, hogy a Restart & Run All parancsra hiba nélkül végigfusson a notebook és minden megoldás a megadott változóba kerüljön. \n", "- Ha valamivel nagyon elakadtok, írjatok egy emailt és segítek. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "hun_alph=['a', 'á', 'b', 'c', 'd', 'e', 'é', 'f', 'g', 'h', 'i', 'í', 'j', 'k', 'l', 'm', 'n', 'o', 'ó', 'ö', 'ő', 'p', 'q', 'r', 's', 't', 'u', 'ú', 'ü', 'ű', 'v', 'w', 'x', 'y', 'z', ' ', '!', ',', '-', '.', ':', '?', ';']" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ " ## 1. feladat\n", "Írd meg a következő függvényeket.\n", " - az `elkodol` függvény egy stringet és helyettesítő ábécét vár bemenetként, majd pedig visszaadja azt a stringet, amit úgy kapunk, hogy a bemenet minden karakterét lecseréljük az helyettesítő ábécé szerinti párjára. Ha egy karakter nem szerepel az ábécében akkor ne változtasson rajta a függvény. Pl: `encodestring(\"abbac\",{\"a\":\"x\",\"b\":\"y\"})=\"xyyxc\"` \n", " - a `dekodol` ugyanazt csinálja visszafelé, tehát egy elkódolt üzenet és a helyettesítő ábécé ismeretében megadja az eredeti szöveget. Helyes megoldás esetén `dekodol(elkodol(szoveg,abc),abc)` az eredeti szöveget adja vissza. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def elkodol(szoveg,abc):\n", " #todo\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "def dekodol(szoveg,abc):\n", " #todo\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 2. feladat\n", "Az alábbi szöveg a cézár kódolással van elkódolva. Mi lehetett az eredeti szöveg?\n", "\n", "A cézár kódolás a következőképpen működik. Választunk egy egész számot, hívjuk ezt k-nak. A titkosítandó szöveg minden betűjét lecseréljük az ábécében k-val később álló betűre. Itt is a fenti `hun_alph`-t használjuk ábécéként, tehát csak a karakterek és a szünet számítanak. (Ha kifutunk az ábécé végén az elejétől kezdjük újra a számolást.) Pl ha `k=5` és `szoveg=\"csíkos zebra?\"`, akkor a az elkódolt üzenet `\"gűnóqű:.ifüec\"` \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "titkos_szoveg='őjáí-jtzáípzzljőíjwapáj tü őaősn'" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 3. feladat\n", "Az alábbi `titkos_szoveg3` is egy behelyettesítő ábécé segítségével készült. A cézár kódolással ellentétben itt semmit sem tudunk arról, hogy milyen helyettesítő ábécét használtak. Szerencsére azt viszont tudjuk, hogy az eredeti szöveg tartalmazza a lenti `biztos_szoveg` részletet. Mi lehetett a teljes eredeti szöveg?\n", "\n", "(Ne lepődj meg ha a megoldás mondatai nem egy folytonos szöveget alkotnak, egy nagyobb szöveg véletlenszerű darabjait kódoltuk el.) \n", "\n", "(Segíthet egy olyan verziója a `dekodol` függvényednek, amely nagybetűvel írja be azt, amit dekódol és kisbetűvel, amit nem. Így nem kevered össze, hogy mely részek vannak már dekódolva és melyek nem, amikor egy részleges helyettesítő ábécét tesztelsz.')\n", "\n", "Megoldásodat - az eredeti szöveget - mentsd el a `megoldas3` változóba! \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "titkos_szoveg3='úscjdcóyíucöuplcuwcridzéöxűgóuq,cbwrqósbwsb,cwdhuíjkb,códzuűxbcöxűgóuq?crbcjdcóyíucdblsíclawsbczuűuipéóuq,czxbbwá,cjufbjuűdíikb,cbdblsűiecíndqéóuq?chsűlcfbujcuwcjobboícjdclxqúdóuq,czucúűéiucbcíshchsiáílcsqellscdblsícbwrücódqéiu;cpup-jsbsűósbcuííuj,cujdcpálcjswrös,chsizuqlcuínpéíujcdbcódbbwuűycoqrös.cíuincsűelcrűswsjchdíúcucjrlcjuűxhöuí,císhcósbwlsislshcuwlcbwrűmícrbchuqxhöuí;crúsbuüéhíujcdbczuqqéhcódlrwbrirl:czélcfbujcrícinuqéwíéhchsicucíshwslbrirl?c sqhsinsjcöáúéűucöupíxjcjulxíéíuj,chálulxjcóuquhdlcxlluícucjdűéqníuj,cxqnul,cuhdcíshcqsbwcöélnéhcbwrinsírűs,cbelcdűyinbrichdullchsibwujuúcucqrüs.csjjxűcucögbcubbwxíncísjdöélxűxúóu,czxincsbsll,chdílcsbsll,chdíúcsqüuíubwxqlu:cúáíucbwdislrösícojqsqeúwdjcsincfbsz,cbcbwoűínajrüüsícbwxqiéqcísjdcucbwsűsífbs;cjrűjsúdjcíuinc síísí,chuiélczéínpucósld,cuchuinuűcíshwslslcfbg űucshqsisld:cbxjcöupíxjcjdhsílchéűcrqslűs,czuqéqűu,cowósinsl,céűóélcrbcpupbwklczuinídczélűu.csinrödűéíl,cqsinsíchuinuűcuóóuincírhsl,cíuincfbuüéblkqchsíldchsicuchuinuűcírüsl;csqcdbcósbwdcleqshcpáluqhélciuwúuixí,clxqúdcindqjxbcoffbscűrbwrlcísjdcuúxh.clxqúdcinoűincscbwkűucfbujcginczmqs- mqs,cbwrlírwsll,czuqqpu-schébcdbcejdómqs?cobbwsbgiluj-ögilujcuwcgűdcshösűsj:czxincindqjxbcoffbscóuí,cuííujcoűmqlsísj.c'\n", "biztos_szoveg='hogy esett, mint esett, mind elpanaszolta: duna szigetében öklelődzik egy'" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 4. feladat\n", "Készíts elemzést a magyar nyelv betű és betűpár gyakoriságáról. \n", "- Keress ehhez egy legalább 100000 karaktert tartalmazó magyar szöveget. (Ne használj olyat, ami a gyakorlaton szerepelt.) \n", "- Mentsd el a szöveget ennek a notebooknak a mappájába `szoveg.txt` néven. \n", "- Olvasd be a fájlból a szöveget.\n", "- Változtasd kisbetűssé és szabadítsd meg a szöveget az extra karakterektől (amik nincsenek a `hun_alph`-ban). \n", "- Ezután számítsd ki a `hun_alph` minden karakterére, hogy hány százalékban szerepel a szövegben. Majd ugyanezt számítsd ki a `hun_alph` minden betűpárjára is (\"aa\",\"ab\",\"ac\",...). \n", "- Az eredményt mentsd el a `megoldas4betu` és `megoldas4betupar` változókba. Mindkettő legyen egy lista, mely (karakter/pár, gyakoriság) elemeket tartalmaz és rendezve van gyakoriság szerint. \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ne felejtsd, hogy a hat feladatból elég ötöt megoldani az ötöshöz" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 5. feladat\n", "Az alábbi `titkos_szoveg5` is egy behelyettesítő ábécé segítségével készült. Itt semmilyen extra információval sem rendelkezünk, csak annyit tudunk, hogy az eredeti szöveg magyar nyelvű. Mi lehetett az eredeti szöveg? \n", "\n", "Szerintem szórakoztatóbb, ha teljesen magadtól oldod meg ezt a feladatot. Viszont ha nincs semmi ötleted, vagy elakadtál, akkor az alábbi szöveget visszafele olvasva találsz egy kis segítséget. \n", "\n", " - .ketíges nesevízs ,tliame yge jrí ,degésküzs nav ergéstíges bböt gém aH .takavazs divör a luádlép detehrűzsiK .tíges takos si azssoh kavazs a rám nátuzE .lavásálálatik retkarak ' ' a luádlép dzeK .lavásálálatik kűteb a técébá őtísetteyleh őlelefgem yge lef stípé nasotazokoF .támázs ketese za detehtíkűzsel noygan lezzE .ttüyge llá mesahos etnizs rápűteb kos ,tíges si lánkoráp űteb a zenaygU .kankairokayg ébsévek a gidep kairokayg ébsévek a ,gem kenlelef kenkeretkarak irokayg nebvleyn raygam a keretkarak irokayg tti za návliyN .kenkiylem gem lelef űteb kiylem ygoh ,inlálatik gem dlábórp gidep djam ,si tti tákitzsitats ólnosah zohtadalef .4 a stízséK\n", "\n", "Megoldásodat - az eredeti szöveget - mentsd el a `megoldas5` változóba! \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "titkos_szoveg5=' qmmxqhlsöőlövcí,hjlyqíxqhzöyamövcíhzcíhqióhflmh qőőgfwsbc,hpióhq őgfmxq ,htayschyamchchíqzq.hqvvqíhcxhwsbövcí,hqióhxnőumgiqmveughqőáss,h úzgmxlqmqíhfluaőiaxasshzűxaísehmxavayhöőőh-hulmxíeshövyöxaő.hfylmsöőóslmxschzűxhvwióaihcxhöőőcshmxödöveő,hc qőóqshxnőuqmjqfqsgyqh cyshcxhluá,hbmcfhcxhayychjgíóőlf,h lískchycióaieychunyxmnősgfhzaőíc;hmhníswucsőcíhqxshlmhbmqőqfmxlhcxhchmafhmxöxhióqyqfh qihmxqigíóhq vqy,hcflhlzömhfnxvqíh qi cyfaődc.hjqmsqílhzcőehfgt,hckaióhchmxgtqíhjay öőshöőőcsashösnőqőlhqió-qióhjgőlih qxsqőqí,hjéysnmhjqdú,hmxgthjlpbmfc,hgmhéuqhcdföshchflvwiiócíehzűxmwiöyhcőöhscysdc.hchjlyqíxgshdöyehluqiqíhfnííóqíh qiscőöőkcsdchchzűxaísehmxavyas,hcföy qőólfhfaőuwmhauczqxqsl,hzcióh qi aíudchcxhwscs.hsgőhzaős,hfgmáhqmsq;hchkqióqfqshkehjqféusqh qi,hmésnsshchsqőlkaőu,hmhqxhlsöőlövcíhcííólhjgíóshmxey,h líshchícthaucjnííhgmxcfaí,hjqőkámhluávqí.hscőöíh gihsnvvqshlm,h qyshlssh cichchőqzqiáhzlőöiűshgmhjnőq qő,hgmxcfaíh qihmxlísqhyöíqkqxqulfhcxhq vqyyqhcxhgihkluqi,heő amh qííóqxqsq,hmhőqíóa dchchíólyfamhjnőuyq.hjlyqíxgvqí,hchkqybqilhtcőaschfqysdgvqí,hnmmxqvaywőehnynfxnőuhvafyafhmösychcőcss,hckaőh gihsgőqíhlmhqxygzqőhíóűőícfhchyexmöf,híctkammxcshéőunigőshqióhjlpbmfc;hsatyaíióamhgmhqőkciócsass,huqhfgt ömchőqkqsqsshzaőíchlsöőlöícf:haőócíhmxgthzaős,haőócíh amaőóiemhcybp,hmh gilmhmxűzqshmcduűse.hgkqí-mxa dcíhéőunigőshass,hqióhygxtgíxshmqhqdsqsshcxhnőgvqhmqífl,hmhqmsqjqőg,hc lfayhchfqysqshvqxöysöf,hchfctwmhflfqyiqssqh gihaíícíhlm.hchflmjlphqővcíuwfaős,huqhcxhcyíahkűudöíh qiöőős,hgmhsúíáuzqhígxsqhchbmlőőciafcs,hc qőóqfhfnxsqhgmhqióhta tömh öyzöíókűuhfnxnsshyqíiquqxsqfhchzűxhséfygí.hcxsöíhqőlíuwőshcxhgybulmxíehjqőg,hjgőhsgyuyqhqyqmxfquqsshqőássq,hösnőqősqhcxhöőőcshíócfös,hgmhaucscysasschmxa dcmhmxödöshchbmnyiquqxáhzűxmwiöyhcőö.hchmxavayhfnyéőhmcőöscőqzqőqfhkqzqysqfh qihígköíóhmxq hiqmxsqíóq;hqxhőqsshchzcbmayödc.hqióhőgőqfhmqhdöyshcxhwsböí,hchjlphqióquéőhzaős;hjqőéőshköshcxhgybulmxíehkösöyc,hjéysnmhjqdgshyökcdsasschcxhöőőcshjqdgyq,hmhgmxyqhmq hzqssq,h öyhqőhlmhcőwus.hc lfayhgdjgőshfaíicsscfhchsayíóaf,h qi axuwőshchmxavay;hcxhcőzehjlphslmxsöíhkcőőassch líuqíhmxczös:h-hfctcmxfaudhvqőg ,hflmjlp,hcxsöíhycdsc,hqőzöiscswíf!h-hcxxcőhőqmxnffqíshchscőctxcsyeő,hmh öyhzlssqhlmhchjlpshchkösöíh-huqhbmauöőcsamhwscxömhzaős!hflgysqfhqióhsgyyq,hmhasshchvyaíxse,hc qőóqíhchvyaíxkqybqihőazciaő,hjnőíóqyűsqsshchfnxqőquséfyq,hcxheuaíhzöyamköxchscyfchbű qytcdxmclhjqőycióaiscf,h lískch ninsséfhjgíóhiópőshzaőíchfl;hchkűyqmhuözlu-mxavayh qiőqíuűsqssqhtcylssóödös,h lőóqíhféőnínmhzaőshchzlőöihgdmxcfc!hcxhqőycvőasshmxcvlíhíáfhgybbmataysdchlmh qiqőqzqíquqss;hchmxcvlíhíáfhyg éőshmlfaősömchjnőzqysqhchióníónyúhsgyhgdlhbmqíudgs.hqióhöyföumayhcőcss,hckaőhfcyíqzöőhluqdgíhchíq qmhwycfhióéőqfqxsqf,hklysqőqíh qisaytcíshchzöiscsehöőőcs.h-h amshpdveőhjaiexxhvqőg !h-hmxeőshkösychchflmjlpícf.h-hfctcmxfaudhqyámqí,h qyshjnő qióéífhchőgtbmáí.hchflmjlphquulih gihqióhmxeshmq hqdsqss,hqőzqssqhchmxczöshchjgőqőq h qihcxhnyn .h amshqióhkammxphjaőóameychgysqf,hc lshdeőhlm qyshchjlp,h qyshdöyshassh öyhcxqőásshlm.hta tömhjqms gíóqfhmaycfaxscfhqió ömh qőőqsshchjaőóamehjcőclí,hcőcsswfhmxavyafhöőőscf,hmhaőócíhbmauöőcsamhjgíóvqíhpmxassh líuqí,h lískchzlőöiamhícttcőhzaőíc.huqhchőqimxqvvh gilmbmcfhcxhzaős,hc lfayhflsöywőshcxhqiólfh qőőgfsqyq hcdscdch-hlsshlmhdöysh öyhchflmjlp,huqhmakchlőóqíhmxgtíqfhíq hőössc,h líshqxqíhchféőnínmhgdmxcföí.hmxgtmgiqmhkcdcuaíshtlőőcísassh qihchsqyq vqí;haőócíhzaős,hc lőóqííqfhchsqy gmxqsh qihch öyzöíóhőqiícióavvh qmsqyqh qiöő ausc.hmxgthscidclhmxlísqh qiqőqzqíqusqf,huqőjlíqfhmxnfuqősqfhfnyéőnssq,hmxq gváőhkcőkcscsőcímöihjgíóqhmwiöyxass.h öyzöíómxavyafhjqkgyőqssqfhfnyéőnssq,hmxgthmxöőhjgyjlcf:hcxhqiólfhchfcyudöshjqísq,hch ömlfhbmataysvcíhiőculösayafhvlyfexscfhchmxgtmgihlmsqííádgíqfhfqióqlgys.hchjlphmxq gshqőfötyöxscsschchséíugyhycióaiöm,hchta töxehmxűíqf,hchsqyq h qitqxmuéőáhgőqsq.h lbmauchycióaiöm,h qííólhmxgtmgihsqyq yáőhsqyq yq.h qííólhbmauöőcsamhfgt!hqióhmxqőűu,hmxgth cuaííc-cybyeőhíóödcmhjgíóhmwiöyxass.hcxhgybulmxíehőcmmcíhőgtfquqsshchmafhióníónyúmgihfnxnss,hkaióhchflmjlph líuqíshdeőhmxq éióyqhzqkqmmqí.hcxhcxshmqhswusc,h qyyqhígxxqí,h lshbmauöődaíh qi.hchőqidavvcíh gilmhqióhjqms gíóhíóúinxsqhőq,hscőöíhcxgys,h qyshcííólhvaőuaihgmhzluö hióqy qfh amaőóiasshőqhyeőch-hqiómxqy,hygiqvvqí,h öyhlísqiqsqsshlmhíqflf.hmafcíhscőöíhqiófquzúqíhkcőcuícfhqőhchjqms gíóhqőáss,htqulihcxhchjqmsgmxqshgmhfnősgmxqshlicxlhflíbmq.hfylmxswmshövyöxaődc,hc líshőqmxöőőhcxhcőzlőöivc,huqhíq hföykaxasshőqőfqfhzqmxlfhfnyéő,hkcíq htaiöíóaf.hc lhchőqi qifctevvhycdsc,hchióqy qfqfhcyböíhchtaiöíóhuqyú,hchvlxaíóammöi,hkaióháfhlmhch qííóqfhaymxöiövchdwsícf.hfqssqíh öyhösnőqőlfhqió öms,hqióhjlpbmfchflíópdsdchchfqxgshsöymchjqőg,hcflh gőóqvvqíhöőő,hmh ciöych wscs,h lískchcxsh aíucíöhíqfl:hgíhch qííóqfhaymxöiövchdwsaf!hchjqőíássqfhmxayaíizc,huqhyq gíófquáhcybbcőhzqmxlfhfnyéőhfylmxswms,híg qőólféfhcőöxcsamcíhjqdqshkcdshqőássq.hqxxqőhchfgttqőhíq hswuasshvqsqőílhchyaíióamhywködphióqy qf.hcxhgybulmxíehbmníuqmqíhöőősh qőőqssq,hmhqiómxqyhbmcfh gőóhmekcdhmxcfcushjnőhzcőckaíící:hchtaiöíóafhfnxéő,hzcióhch qiqőqzqíquqsshmxavayhvqőmqdgváő?hchflmjlph öyhíópdsasschchfqxgshch amaőóiehióqy qfqfhjqőg,huqhcxhgybulmxíehchkösöychfctsc,hgmhflmxöiwőuasshzqőq,hcxhamxőatamhqőábmcyíafaíhfqyqmxséő.h-höőuasshőgió,hsqhfquzqmhöőőcs!h-h aíuschlicxhköőözcőhchflmjlp,hgmh qiml aicsschchőgtbmáíhőqjqőghmxöiwőuehgybulmxíes.h-hgíhscysaxa hköőözcőh-hjqőqősqhcxhqőqzqíhmxavay.h-hnyn qshmxqyqxsq híqfqu,huqhsqh qihycdsc hmqiűsqssgő,h qyshbmcfhcffayhkciókcsa hqőhscőctxcsa cs,hcffayhzcíhqyá hchdöyömkax,hkchqióhöyscsőcíhmxűzúhióqy qfhéőhchkösc yc.hqő qkqsqfhcföykazö,hbmcfhqióhkqőóyqhíq :hchsq tőa vc.huqhkchzqőq hzció,hvqígxkqsqfhchsq tőa híólsasshcdscdöí.h cycudhköshycdsc ,h qyshkchőqmxöőőmxhchkösc yeő,hqőkcióh líuqíhbmqtthqyá ,hmhaőócíhgőqssqőqííghzöőaf,h líshc lőóqííqfhícttcőhőösmx.h-híq hkcióőcfhqő,hfquzqmhöőőcs!h-h aíuschchflmjlp,hmhjaőóscssöfhchmxguűsáhzöisöshjlyqíxqhwsbölí,hflhchzöyamhqiólfhőqimxqvvhsq tőa chqőásslhsgyyq.hjnőtcsscíshchsq tőa hmxöyíócmhfctwdc,hmhchjgíóvqíhpmxehaősöyyeőhflzqsáusqfhchmwicycfhchmnsgshgdmxcfövc.hchsq tőa hvcőhaőucőlhkcdedövcíhqióhműyq őgfhöőős;hbmauöőcsamhjgíóshöycmxsass,h lískchbmlőőciafhfamxaypdchjaííöhfnyéő.hchműyq őgfqshbű qytcdxmhuűmxűsqssqhfgfhcőctaíhsúxtlyamcíhlxxehőgsyc.hicőlőqlícf,hchícióhswuemícfhműydchzaőshcx;hcxhqiómxqyúhbű qyhmafcs aíuehdqőfgt;hcxhlxxehőgsychchswua öíóshdqőqísl,h qyshchswuemhpsdchséxqmhőgsyöíhzqxqshchzgisqőqímgivq.hchdavvhaőucőlhkcdevcí,hchta tömhműyq őgfqfqíh lískch líuqíhmxavayhgőqsyqhfqőshzaőíc;hlssh lbkqőcíiqőahöőőass,hchícióhjqmsáhgmhmxavyömx,hc asshchvcvgyycőhfamxaypxasshfnősá,hucísq;h úzgmxqf,hmxqőőq eylömaf,hlsöőlchnynfhvémxfqmgiql.hbmauöőcsamhsq tőa hqx!h lískch qiőqvvqísqfhzaőíchch öyzöíóywköfhyquál,h lískchch cicmhmxavaycőcfafh gih cicmcvvychq qősgfhzaőíchchjqdéfqs;h lískchchígtsqőqíhsq tőa vcíhjqővpiasshzaőíchcxhayiaíc.hchflmjlphflíópdsasschfcydöshchjgíóqmmgihwsöí,huqhcxhgybulmxíehklysqőqíh qijayuwős,hgmhqőlyc auasshzqőq.hchjlphqyámqíhfctcmxfauass,hjésóéőshchmxgőhchjéőqh qőőqss,h qibmlfayuwőshchsq tőa hmxöyíócmhcdscdch-hvqbmwfschqióhőöskcscsőcíhfgx.hcxsöíhklysqőqíhqőmnsgsquqsshqőássqh líuqí:hbműtámhkluqihsgyűsqssqh ciökax.hyqiiqőlhícthycióaiasshchjqdqhjnőnss,hmháhasshéős,hjgőlihőqbmpmxzc,hcxhgybulmxíehkösöí,hc qőóh axuwőcsőcíhöőőasshscőctxcsöí.hchmxqigíóhflmjlpshklysqőqíhldqusmgihmxöőősc,h qi:hqmxgvqhdwsasshcxhcíódc,hcflhqőáxáhícthcxgyshféőusqhqőhkcxwőyeő,hkaióhzcőckaíícíhtgíxshfqyűsmqí.huqhchjlphqióhicycmshmq hswuasshmxqyqxíl,hbmcfhgkmgigshzlkqssqhkcxc.hösnőqősqhvpbmpxewőhcxhgybulmxíehíócfös,h qibmefaőschfljgíóqmquqsshayyös,h gihlísqsshlmhíqfl,hcxsöíhvqjayuwőshqióhflmhwsbövc,hc qőóhaőócíhmxúfhzaős,hkaióhőqijnődqvvhqióh öőkömhmxc öyhjgykqsqsshqőhvqííq.hvqőgtqsshqióhköxhzcmtöísam,hícióhfctwdöí,hjnő qíshchtlmxfamhjcőh qőőqsshfcíócyie,hfqmfqíóhőgtbmáí,hc qőóíqfhfayőösdöshqióhfnsgőhtesaősc;hyaíióaffcőhsqőlciicsass,híólsasshjaőóameychdwsass,hlííqíhőgtbmáhzqxqsqsshőqhcxhwuzcyyc.hícióhfpshöőőshaucőqíí,hvqőáőqhzcmscihuyesafhzqxqssqfhchköxh líuqíhq qőqsgyq,hqxqfqíhkpxsöfhchzlxqs;hchjcznuynfhqió ömh qőőqsshkl vöőexscf,híólfayiasshchfpshfqyqfq,hqió-qióhznunyh qivlőőqíshch cicmvcí,hmhzlxgshcxhwuzcyhfnzgyqhőabbmcísassc.h amshqióh ömlfhuéőquqxáhőgtbmáíhkcőcushjnőjqőghchflmjlp,hmhfgsh csyexvchésfnxnss,hcflfhdefquzúqíhsöíbaőscfhőqjqőghchőgtbmáfní,h cduíq hjqőőnfsgfhchmxqigíóhióqyqfqs.híq hgttqíhmxgt,huqhsqmsqmhcmmxaíóhőgtfquqsshchíóa wfvcí;hupm,hjqfqsqhkcdchzaőshchőqijávvhgfqmmgiq.h-h lshkaxsöő?h-hfgyuqxsqhchjlpseő,hckaióh qitlőőcísassc.h-híqhkcyciwud,hcíóö !h-hfgyőqősqhchmxqigíóhjlp.h-hqióqsőqí,hicycmshmq hcuscf.h-hcxhcíódchmxafíóödchwsöíhfctass,h lískch qihcfcyschzaőíchqíiqmxsqőíl,huqhcxhvqmlqsqsshchmxavövc.hkaióhchmxavch lőóqíhzaős,hílíbmhmxűzq hőqűyíl,hbmcfhcxshchjéőqmhzcmjcxqfcshq őűsq h qi,hc qőóvqíhmxgítcycxmcshscyscícfhcxhaőcmxaf,hmhcííöőh qőqimxqíqf.hcxhcmmxaíóhlmhqjnőnssh qőqíiqssqhjöxehfqxgs,hmhfnxvqíhícióashscmxűsasshfníónfgzqőhchmxqigíóhflmjlpí.h-hvlxsamcíhzcíhtgíxqu,hbmcfhíq hcfcyauhluqcuíl!h-hflöősassc.hchjlphműyzchjcfcus,hcxhcmmxaíóhvqőqypiass,hmhchmxqigíóhióqy qfhkcíiamcíhjqődcduwős.h-hkchqőhíq hkcőőicsmx,hfqssgkcműsa hchjqdqu!h-hylzcőőshyöhcxhcmmxaíó,hmh qiőevöőschchtcycxmcmjcxqfcs.hchjlphyg éősqíhjqőflöősass,hmhchjnőuyqhőctwős;hqvvqíhchtlőőcícsvcíhőgtqsshvqhchmxa mxgucmmxaíóhch cichtcycxmcmjcxqfözcő.h-h lshbmlíöőmxhqxxqőhchióqy qffqő?h-hfgyuqxsq.h-hcxhgíhjlc !h-hjqőqmqőshcxhcmmxaíó.h-hkchpióhsqsmxlf,h qizqykqsq !h-hmh qilísh qiőevöőschchzcmjcxqfcs;hch ömlfhlmhjnőq qősqhch ciögs,hkaióhzguqfqxxgf;hchfgshzcmjcxgfhnmmxqfabbcís,hgmhcxhlxxehmxgítcyöxmhqxqyjqőghkwőőasshvqőáőéf.hchjlphchícióhfczcyauömvcíhqióhmxq tlőőcísömhcőcsshcxhcdseíöőhsqy qss,hflmwyycíshchmxavöveő,hmhcxhwuzcyaíhöshcxhwsböychlyc auass.hcuulihmxcőcus,h űihflmhséuqdqhvűysc,hcxsöíhőlkqizqh qiöőős;hgttqíhcxhqőásshchsq tőa hqőáss,hc qőóíqfhmxöyíócmhfctwdchcxhgddqőhflsöywőshqőássq.h amshvqőgtqss.hchsq tőa h chlmhjgíóöyvcíhpmxass:hchflmjlphőqsgyuqőshchdavvhaőucőlhkcdehqőmáhműyq őgfqhqőáss,hmhfcydöychvaywőzchxafaiass.hdnssqf- qísqfhcxhq vqyqfhchsq tőa vcí,hchtcth lmgxqsshcxhaősöyíöő,hchióqy qffqőhíq hsnyáunsshmqífl,hbmcfhqióhnyqiq vqyhmxq qhcfcush qihycdsc,huqhcxsöíhcxhlmhqő qíshchsnvvlzqő.hchmxqigíóhjlpshpióhőqióníiűsqssqhcxhgkmgih qihchmxa dpmöi,hkaióh öy- öyhqőcőgős;h qikpxeuasshch öyzöíóq őgfh qőőqsshqióhjcő gőóqugmvqí,hmhqőíóa schcxhöőa .h öyhqmsqőquqss,hc lfayhjnőylcus:hzcőcflh qiyöísasschchywködös.hchmxqigíóhjlphjnőígxqss:hcxhnyqiq vqyhöőőasshqőássq.h-hvqsqihzció?hkaőhőcfmx?hcxhqigmxhíctashlsshsnősnssqu?h-hzcőemöiicőhqőöycmxsasschfgyugmqlzqő.hchjlph líuqíyqhzöőcmxaős.hcxhnyqihcffayh ciözcőhzlssqhchfnxqőlh qőőgfwsbchqiólfhflbmlhköxövc.hqióhfqmxsóúzcyyeh úkqőóvqhőgtsqfhvq,hckaőhmxayicő cmcíhzcyyaicsasshcxhnyqiq vqyhjqőqmgiq,hqióhflmhjqkgyhfwsóch qih-hchmxáygshaőócíhynzluyqhíóűysöf,hkaióhösyexmcmxűíőqsshycdschchváyqh-híóa vcíhjnőwiyasshchkqőógyáő,hgmhchflmjlphőövökaxhsqőqtquqss.h-höyscsőcíhőqőfqfhzaíxeuícfhqió ömkaxh-h aíuschcxhcmmxaíóh qikcsasscí,hgmhmxqyqsqssqőhml aicsschchfwsóösh qihchjlps.hcxsöíhqííl-líílhcuscfhchjlpícfhchdemxűzúhq vqyqf,hcxsh aíusöfhíqfl,hkaióhgdmxcföychíöőwfh cycukcs,h ömícth cduhcxhnyqih-hilwmqttqhcteh-h qifqyqmlhcxhcíódös.hmxqigíóqmhflmhöióvchjqfsqssgf,huqhcxhlmhflyöőólhta tchzaőshchjlpícf,hcflhőqisnvvmxnyhchtwmxschfnzníhköős.hguqmqíhcőwus,hgmhqigmxhgdmxcfchchbmauöőcsamhfgtqfyáőh qihcxhgybulmxíeyeőhöő auass.hilwmqttqhcteh ömícthyqiiqőhqőlíuwősh qifqyqmílhchjlphcíódös;hchmxqigíóhióqy qfhíq hícióaíhnyéőshíqfl,h qyshswusc,h lhőqmxhchzgiq:hzlmmxczlmxlfhcxhcíódökax.hműyshfqmqyzqmqí,hbmefaőicsschchflmhjqkgyhfwsóös,hmhcxhcmmxaíóhmxa aypcíhveőaicsass.h lshzgixqsshilwmqttqhcte?hkammxcmcíhscíöbmfaxasshjqőqmgigzqő;hcxh qilíshbmcfhveőaicsass,hgmhióníiguqíh ciökaxhzaíschchjlps.h-hióníónyúhióqy qf!h-h aíusc.h-huqygfhfqmxsóúfgmxűsáhzöőkcshvqőáőq,hc lőóqíhsqhzaősöő.hígxu,h lőóqíhjlía cf,hkcdőgfaíócfhcxhwddcl.hcxhlmsqíhlmhfqmxsóúfgmxűsáíqfhsqyq sqssq.hass cycushköshchflmjlphchköxvcí,hmh cichcxhcmmxaíóhscíűsicsschch qmsqymgiyq.hdehgsqőqfqshfctass,h gőóqíhcőwus,hmhőcmmcíhflzlywőshmötcushflmhcybc.h öyhdefquzúqíhdösmxasshvqőőlmml özcőh-hűióhkűzsöfhchjqkgyhmxáyúhflmfwsóösh-,hlíiqyfquqsshlmhzqőq,huqhcxhcmmxaíóhqxgysh qijqíóqiqssq,h gih qihlmhmxlusc.hchjlphqxshícióaíhchmxűzgyqhzqssq,hqőiaíuaőfauzchéőunigőshflmhfc yödövcí,hcxhcmmxaíóhtqulihfl qíshcxhwsböyc.hch úkqőóvqíhváynfqshmxöyűsasscf,hcxhcvőcfaíhíqkgxhzcmyöbmhmnsgsőqss,hmhchjlphöő csőcíwőhköíófaőeuasshcxhöióaí.hqióyqhbmcfhcxhgybulmxíeshőössch cichqőásshchmnsgsvqí.hklysqőqíh lískchtcsöfhuavcdöshkcőőasschzaőíchcxhwsböyeő.hcxhcvőcfkaxhwiyass,huqh öyhíq hőösasshmq ls.htqulihvlxaíóam,hkaióhcxhgybulmxíehzöiscsasshcyyc.h-hmqiűsmuhqőhcxhpyícfhchjqmsgfqmhőöuödös!h-hféőusqhcxhcmmxaíóh ömícthyqiiqőhmxa mxgudwf,hchjqmsáhwsöí,hcflhqióhőöuchjqmsgffqőh qihqióhnmmxqiníiónőshícióhzömxaíícőhkcőcushqőhchköxwfhqőáss.hchjlphqőzqssqhchőöuöshchjqmsásáő,hgmhwsöíchlíuwős;hchfgtsöyhfctwdöíhőgtsqfhvq,hmhwiócícxaíhchőgtbmáíhkcőcuscfhjnőjqőg,hc qőóqíhcffayhgddqőhcxhgybulmxíehzöiscsasshjnőhchjlpzcő.h líshlm qyámqls,hígxsqhchmxavyafcs,hfgtqfqs,hchióníónyúh öyzöíólmsqííás,h qihch cuaííchbmauöőcsamhmxűíqfvqíhséíunfőáhcybös.hchícióhfgtígőhöőőscfh qi,hchtaiöíóafhfnxghőqmxöőőehfylmxswmhfgtqhqőáss,hc qőóyáőhióqy qfcybafhguqmh amaőóchmwiöyxass;hchmxqigíóhjlphlmh amaőóiass,h qysh amsháhlmhch qííóaymxöivcíhgyqxsqh ciös.h-hdeőhzcí,hkcxc qkqsmx!h-hféőusqhchjqmsá,h qyshchióqy qfh gihcffayhlmhasshöőős,hc lfayháh öyhqőyqíuqxsqhjqmsáöőőzöíóös.h-h qiígxkqsíg ,hkaiócíhjqms?h-hfgyuqxsqhjgőgífqíhchjlp.h-hkaiócíhfqílhyöhchjqmsgfqshchjqkgyhzömxaíyc?h-h gihíq hjqmsqfh-hjqőqősqhcx,hgmhjqfqsqhfygsöshzqsshqőá.hmqvqmqíhdöyshchfqxq,h gyqiqssqhchícióhfgtqs,hmhvöyh gihbmcfhqióhkcőzöíóhzaícőhmnsgsőqsshchzömxíaí,h öyhasshőqvqiqsshycdschfylmxswm,h líshchjqms gíóqí.h-hía,h amsh öyhqyqudhkcxc!h-h aíuschzgiéőhchjqmsá,hmhchjlphőqkayicushjqddqőhkcxc qís,hőqéőshcxhcmxscőkax,hgmhscíwőschsazövvhchfqmxsóúzcyyöms.hiaíuaőcsclhqigmxhícthchfgtsöyvcíhfcőcíuaxscf,hmh líuwíscőcíh qimxpyschcxhwddös,héióqsőqíéőhuaőiaxass,huqhchflmfwsóöshíq hvammxcísassc.hvqqmsqőquqss,hmhcffayhzqssqhgmxyq,hkaióhzgőqsőqíéőhíólszch cycushchköxhfctwdch-hflamaíshycdsc.hchfwsóchwsöíchlyc auasshmhfnzqssq,huqhchjlphíq hzqssqhgmxyq.hqiómxqyhbmcfhjnőzcffcísassh ninssq,h lískchjlióqő qxsqsíg:hgíhlmhlsshzcióaf,híq hőösau?hchmxqigíóhjlph ciöseőhchkgsjqdúhmöyföíóseőhmqhldqushzaőích qihcííólyc,h lísh amshvqőőlmml öseő.hsgőhzcí,hmhchfwsóchcxhwsböí,hnősnxqsőqíéő,hckaióhcxhnyqihcmmxaíómöihmxafsch aíucíl.h qyshvqőőlmml chsgőluávqíhbmcfhqióhyömxcvasshflmhvöyöíóváyhxqfgvqíhőgtkqsqsshcxhwsböyc.hchflmhxqfgshtöísőlföfh qihbmqíiqssóúfhuűmxűsqssgf,hgmhtlyamhmxcőciicőhőqkqsqsshösfnsílhchfwsóchíócföíh qihkcmöí.hc lfayhsgőlhíctafaíhmgsöőílh qíshcxhcmmxaíómöiicő,haőócíhzaőshqvvqíhcxhnősnxqsvqí,h líshqióhflmhfqbmfqiluc.h amshköshvqőőlmml chflíshzaőshcxhwsböí,hqióhmxöőhywkchígőféő.hícióhvcdhőqmxhqvváő!hqióhbmctömychqősúísh líuqíhövyöíufgt;hchjlphcyychkcőcusövcíh qibmefaőschcxhgybulmxíes,hcxsöíhchfcydöychfctschchkluqisáőhyqmxfqsáhflmfwsóös,hgmhjwsasshzqőq,hckaióhbmcfhchőövchvűysc.h-hkg,h lshzlmxqőhaőócíhmlqszq?h-hflöősasshyöhfgshyqíuáy,hcflfqshvqőőlmml chkqzqmqíh qiwicsass.h-hkaőhőatscuhqxshchmxgthfwsóös?h-hfgyuqxsgf,hmhíóa vcíhqőhlmhzqssgfhsáőq.h-hcudöfhzlmmxc!h-hflöősasschfgsmgivqqmqssqíhchmxqigíóhjlp.h-hkchíq hőatscu,hcffayh qi aíukcsauhasskaí,hkaióhdnddqíqfhgysqhcxháymxavöyc!h-hcxxcőh qi aíusöf,hkaőhcxháymxavc,hmh ciwffcőhzlssgfhvqőőlmml ös.hícióhvcdvcíhzaőshchmxqigíóhjlp!h lshsqióqí?hcxhcyíevchzqmmqh ciös,hzcióh qídqíhkcxc,hgmhzcőődaíhvqh líuqís?h-hcffayhcióaíésíqf!h-hiaíuaőschyg éősqí.h-hköshémmqíqf!h-hmxöíschqőh ciös.h-hcffayhőqicőövvh qikcőaf,hgmhscőöőfaxa hch cuaííözcőh qihfylmxswmmcő.h-hgmhkcxclíuwős,hqőfgmxéőzqhyö,hkaióhcióaíéslf.hchfctwshxöyzchscőöősc,hchfataiscseshíq hgysqhjnő,hcxhwsböíh qihqióhőgőqfhmqhdöys,huqhscőöőshqióhícióhfnzqshmhcxxcőhzqysqh qihchfctws.h-hflhcx?h-hflöősassöfhvqőéőyáő.h-hgíhzcióaf!h-hjqőqősqhmxqtqizqhchjlp.h-hvqőőlmml ch qimxnfnss.híólmmcícfhfctws,hgmhzqydqíqfhcióaí!hícióhldquqőq hsö cushaucvqíí,hféőnínmqíhcxhcmmxaíómöihzqssqhchmxűzgyqhvqőőlmml chmxnfgmgs,hmhynisníhchjcőychqmqsshchsqflísqsq,hckaőhchflmhvöyöíóváyhxqfqhmxafasshőeiíl.h amshlmhasshőeiass.h-hvqőőlmml chcxháymxavöí!h-hflöősasshjqőhyg éősqí.h-hsqhkcmxaíscőcí!h lzqőhbmcőscuhflhchkluqihwsböyc?h qijcióhmxqigíófq!hcxhchióníiqhflmhöőőcshchuwyzchfcsaíöfhfnxnss.hilwmqttqhcteícfhíóa vcíhqőhfqőőqssh qíílqhcxháymxavöyc.hcxhcmmxaíómöihdcdzqmxgfqős,hchjlphműys,haucióúőshchköxígt,hasshsqy qsshchjqmsáhlm,hsgyuqlhfnxghjaischchióqy qfqs,hgmhctyeychqő aíucsasshzqőqh líuqís.hchjlphvqmxgőshcxhgybulmxíeyeő;hvqmxgőshchfgtsöyyeő,huqhchjqmsáhíq hmafcshgysqsshvqőáőq.hzlicmxscőschchjlps,hbmlőőctűsasschcxhcmmxaíómöias,huqhcxshwiócíhklövc,hbmcfhcffayhíówiauassh qi,hc lfayhilwmqttqhctehkcxckaxschcxháymxavöshdöyshvqőőlmml ös.hőqsshqyyqhícióhnyn ;hchjqmsáh qiml aicsschchjlps,hgmhzlicmxwőhqióhbma ehflmhfgtqshcuasshíqfl.h lőóqíhta tömhycdxafhzaőscfhcxaf,h lőóqíh wőcsmöiamhjqdqf!hchjlphcxhgybulmxíeshlmhzlmxaísőösschfnxséf,haőócíhzaős,h líshchzcőemöivcí.hígköíóhzaíömhgőqsyqhfqősqssqhchtctűyaí,h gihqióhköxhlmhőösmxassh ninssq.h-he,hcflhycdxaőíl,hjqmsqílhswu!h cichfnyghswudchzcyöxmaőílhcxhqigmxhzlőöias!h ömíct,hc líshqióhtlőőcícsych ciöych cycus;hjaischcxhlyeís,hmhcxhqiólfhfgthkösöych qityevöőschőqycdxaőílhchfquzqmhmxavyas,hcxhgybulmxíes.hgmhklmxlsqfhzcióhmq :hmlfqyéőshlmhíqfl!hqióhflbmlshjqyugíhöőőshwiócí,hmhcxhqiólfhba vdchspőmöiamcíhzcmscihőqss,hch ömlfh qihliqíhzgfaíó,huqhcxgysh líuqíflhyölm qykqsqss,hmhchjlphvaőuaicíhmxq őgőiqssq.hcxsh líudöyshgyqxsq,hkaióhcxhlyeíshíq hpióhjaidchchfqxgvqí,hckaióhfqőőqíq,huqh ömícth öyhpdhgybulmxíeshycdxaőshcxhqőmáh qőőg,hmhqxh öyhmaffcőhféőnívhzaős;hchkcy culfhcxsöíh öyhta tömcíhmlfqyéős,hcföyflh qilm qykqssq.huqhchfqmxsóúzcyyömhvlxaíóhíq hzcőc lhdeőh qís;h qiyqíuqőáfhlmhiógyqíhöőőűsasscfhvqhkaxxödwf.hcxhgybulmxíeh qiscíűsasschchjlps,hkaióh líuqís,huqh líuqíshtctűyychőqkqshzcyöxmaőíl,hgmhqigmxhjlyqíxqhzöyamchfgtqmfníózhcíícf,hcflhőctaxílhswuhvqííq.hqiólfhmxgthsqygíhöőőhqióhfcybmphamxőat,hmhcxaíhcxhlicxmöih győqiqshq qőá,hvqfnsnsshmxq úhlmsqííádq;hqxhlmhtctűyychfqyéős,hmhchfqmxsóúfgmxűsáhflmhlícmchzqsqssqhtctűyyc.hqióhícthcxsöí,hc lfayhvqőőlmml chaucmxnffqíshchjlpkax,hcxhqióhtlőőcícslihqőiaíuaőfauass,hcxsöíhyöflöősass:h-h cycudhzqmxsqi!hkchíq h axuwőmx,hícióaíhmxgthőqmxqő,hgmhvqőqfqyéőmxhchfgtióúdsq gíóq vq.h-huqhvqőőlmml ös,hpióhőösmxlf,híq hfqbmqisqssqhqxhcxhűigyqs,h qyshíq hcfcyshíówiauscíhéőíl,hlxiqss- axiass,hmhchjlphzgiéőhlmh qifnsnxsqhchjqdgsh qihchjcyfös.hchflmfwsóchíóémxűsqss,hjlböífaős,hmhch cuxciicőh cduíq h qijadsassch ciös.hcffayhőgtqsshvqhcxhcmmxaíómöi.h-hsqhqőzqsq éőshfnőónf!hsqhmxqigíóhflmhöőőcs!h-hbmcfhqííólshswuassh aíucíl.hqőscmxűsasschchjlps,hnmmxqzlmmxchzqysq,hmhflfqyiqssqhköxöveőhchköőösőcíhlíióqígőás,hcxhqőzqsq éős,hlmsqísqőqíhicxjlbfes.hcxsöíhyövaywőshjgőlih qijadsasshfwsóödöyc,hgmhműyzchbmefaőicssc.hgttqíhcffayhlióqfqxqsshjqőjqőghchőgtbmáíhchjqmsá,hc lfayhchjlphmxa aypcíhvcíuwfaőshőqjqőg.hgmhqxhchtlőőcícshjayuwőetaísdchqííqfhchsnysgíqsíqf.hqmxsqíuáfh pőscfhqő;hqiólfhgzvqíhflöőőűsömshyqíuqxsqfhjlyqíxgvqí.hchőqisnvvhőösaicsehfgshqió ömh qőőqsshjéiiáhjqms gíóhfnyéőhsaőaíiass.hchflmqvvlfhfgthqióhzluö hcybphjlpshövyöxaős,hcflhvwxieíhycdxaősch auqőődgs,hchfatcmxychíóűyshjqkgyhfwsóös,hc qőóhmqkaióhmq hcfcyshíówisaíhéőíl,hmhqxgyshjqdgsh qihjcyfösh cuxciicőhtyevöőschynixűsqílhflmhjqmsádq.hchfgthaőócíhzcőemöiamhzaőshgmhaőócíhqőqzqí,hkaióh líuqíflshqőycicuass.hcxshvqmxgősgf,hkaióhqióhjlcscőhjlyqíxqlhjqmsqssq,hcflshflbmlhfayövcíhcxhwsböíhscőöőscf;hqióhnyqihfqmxsóúfgmxűsáhköxcmtöyhzqssqhiaíudclvc,hgmhmqíflhmq hscíűsasschycdxaőíl.hqióhkűyqmhjqmsáhjquqxsqhjnő,hc lfayhqőfqyiqssgfhchköxveő,hgttqíhcxhcmmxaíómöihfquzqmhfwsóödöícfhch qifnsnxgmqh lcss.hkűyíqzqmhjqmsáhőqsshchfqmxsóúfgmxűsáhflmhlícmveő,hqyyqhzcőőasshqxhchfgthlm,hmh gihlífövvhchícióavvlf:hqxqíhbmcfhqióhcőcfhzaős,hqióhyaíióamhywködp,hjéysnmhjqdúhióqy qf,hcflhchzűxaísehgybulmxíehíócföshösnőqőzqhguqmqíhcőwushcxhwsböí.hchsq tőa híólsasshcdscdöíhöshjgíóhmxúyáunsshfl,hgmhyözqsáunsshkcőzöíó,hmxgthcyböyc.hióníónyúhjqms gíóhzaőshmxgőqmhcycíófqyqsvqí,hmhqiólfhmcyfövcíhjqfqsqhmxcőciam,hióömxjösóaőamhvcvgyfamxayphjéiinss,h qyshcvvcíhcxhqmxsqíuávqíhkcősh qihchjlcscőhjqmsá.h'" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## 6. feladat\n", "Készítsd el az Enigma rejtjelező gépet pythonban. Az Enigmát a Második Világháborúban használták a németek. Körülbelül úgy nézett ki mint egy írógép, amibe beleszereltek három forgó tárcsát. Betűnként rejtjelezett, ha megnyomtad egy billentyűjét, akkor egy kis lámpa jelezte, hogy milyen betűt kell leírnod helyette. Itt egy egyszerűsített rajz a belső működéséről. \n", "\n", "![enigma](http://damasdigabor.web.elte.hu/python/beadando1/enigma.JPG) \n", "\n", "A gép úgy működött, hogy a betű lenyomásával az áram végighaladt egy vezetékekből álló rendszeren, és ahová eljutott, ott kigyulladt egy lámpácska. Először egy kapcsolótáblán haladt át, ami megkeverte a drótokat. (azaz egy fix permutációjának felel meg). Aztán áthaladt három tárcsán. Ezek a tárcsák is egy-egy keverést adnak meg, csak a gép működése közben ezek változni fognak. Aztán egy visszafordítóba futott, ami párokba állította a drótokat és visszaküldte az áramot egy másikon. (Aza egy bijekciónak felel meg). Ezután visszafelé átfutott újra a három tárcsán és a kapcsolótáblán. Így visszaért egy billenytűhöz, és az ahhoz tartozó lámpa felgyulladt. Például a kép azt ábrázolja, hogy a `b` billentyű megnyomására a `c` lámpa fog felgyulladni. \n", "\n", "Ha a gép csak ennyit csinálna, akkor ez persze nem volna más csak egy behelyettesítő ábécé. Viszont minden billentyű ütés után a tárcsák állása megváltozott. Az első ütésnél az első tárcsa egyet tekerődött, azaz minden drót körkörösen arrébb ment egyel. Az előző ábrán lévő állásból például ez lett:\n", "\n", "![enigma2](http://damasdigabor.web.elte.hu/python/beadando1/enigma3.JPG) \n", "Itt már a nem a `c` fog világítani, ha lenyomjuk a `b` gombot, hanem a `d`. Az első tárcsa minden gombnyomásra lépett egyet. Amikor az első tárcsa már annyit lépett, hogy teljesen körbe ért, egyet lépett a második tárcsa is. Mindig, amikor a második körbeért, lépett egyet a harmadik tárcsa is. Így az összes lehetséges tárcsa pozíción végigmentek a tárcsák és csak utána kezdődött előröl az egész. Tehát a kapcsolótábla és a visszafordító fixen marad a működés során, a tárcsák pedig különböző sebességgel forognak. \n", "\n", "Készíts egy programot, ami megvalósítja az enigma kódolást. A feladatott objektum orientáltan kell megoldani. \n", "- Készíts egy `AltalanosTarcsa` osztályt, aminek legyen három alosztálya: `KapcsoloTabla`, `ForgoTarcsa` és `Visszafordito`.\n", "- Készíts egy `Enigma` osztályt, amelynek minden példánya egy enigma gépet valósít meg. Tartalmazza a tárcsákat és azok állását, és a hozzá tartozó tárcsák segítségével képes elkódolni egy szöveget. \n", "- Az elkódolást az Enigma osztály `elkodol` metódusa valósítsa meg. \n", "- Rád bízom a részleteket, például, hogy milyen ábécével dolgozol. \n", "\n", "(Bónusz: Gondold meg, hogy ha tudjuk, hogy milyen tárcsákkal dolgozott a gép, azok milyen állásban voltak és a titkosított szöveget is, akkor hogyan nyerhető vissza az eredeti szöveg.) \n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": {}, "nbformat": 4, "nbformat_minor": 2 }