Feladat: I.157 Korcsoport: - Nehézségi fok: -
Füzet: 2007/április, 232. oldal  PDF  |  MathML 
Témakör(ök): Feladat

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

Rendszeres olvasóink bizonyára emlékeznek híres nyomozónkra, Fül Elek-re. Legutóbb (I. 134.) egy nyomozásához kérte segítségünket. Sajnos a ,,rosszfiúk'' megneszelték, hogy szorul a hurok, és adataikat most már titkosítva küldik egymásnak. Elek mindenképpen szeretné lefülelni őket, ehhez azonban meg kell fejtenie a titkos üzeneteket, és neki is képesnek kell lennie ilyen üzenetek írására. A kódolt üzenetek mindig csak pontosvesszővel elválasztott számokat tartalmaznak. A nyomozó megtudta, hogy a küldött üzeneteket mindig aláírják a gengszterek, ez alapján a

119;25;125;69;80;118;67;147;43;21;109;29;88;128;130;72;58;156;
számsor Hack Elek aláírása. Fül Elek azonban észrevette azt is, hogy a számsor nem állandó, pl. a
112;32;36;158;63;135;97;117;44;20;51;87;58;158;49;153;83;131;
számsor is Hack Elek nevének titkosítása. Feladatunk a következő: fejtsük meg, milyen módon titkosítják a bűnözők üzeneteiket, majd készítsünk programot, amely segít a detektívnek a rejtjeles üzenetek olvasásában, illetve új üzenet írásában. A program neve után három paraméter legyen: az első paraméter kötelezően a ,,be'' vagy ,,ki'' kifejezés, a be a titkosítást, a ki a megfejtést jelenti. Ezután a fájl neve, amiből az adatokat bekérjük, az utolsó paraméter pedig az elkészült üzenetfájl neve. Például: i157 ki titok.txt megfejt.txt a titok fájlt megfejti, és az eredményt a megfejt fájlban tárolja.
Beküldendő a program forráskódja (i157.pas, i157.cpp, ...).