HTML

Programozó Páternoszter

Ez a Programozó Páternoszter (PP) blogja, a programozásról szól. Aktualitása, hogy a Debreceni Egyetem Informatikai Kara Magasszintű programozási nyelvek 1-2, C++ esattanulmányok, Java esettanulmányok című kurzusainak blogja is egyben.

A vadászat

A Debreceni Egyetem Programozói Évkönyve: az UDPROG projekt. A szakmai fórumunk a Facebook-en. Az új előadások a prezin.
A régi előadások:
Prog1:
1. C bevezetés
2. C tárgyalás
3. C befejezés
4. C a gyakorlatban
5. C++ bevezetés
6. C++ tárgyalás
7. C++ befejezés
8. C++ a gyakorlatban
9. Java platform bevezetés
10. Kvantuminformatikai alg. bev.
Prog2:
1. Java bevezetés
2. Java tárgyalás
3. Java befejezés
4. Java a gyakorlatban
5. Software Engineering bev.
6. Java EE bevezetés
7. AspectJ bevezetés
8. BPMN-BPEL SOA programozás
9. C++ haladó
10. Tensorflow

Kövess engem!

Friss topikok

Linkblog

DE IK Prog Labor Labdarúgó Bajnokság és Kupa

2012.02.25. 10:44 nb

2012 tavasz, MI, GI, PTI (első és második évfolyam BSc)

Elkezdődött a verseny kíírása (jelen pillanatban a "versenyszabályzatot" finomítjuk), figyeld a fejleményeket a verseny http://robocup.inf.unideb.hu/ szájtján!

Ha kérdésed van, nyomj egy kommentet!

Lássuk a labor anyagát! Aktualizáljuk a korábbi Felvételt hirdet a CIA c. posztunkat

"...ez a módszer az egyik legrégibb és legismertebb. Hacsak a kulcs nem nagyon hosszú, a CIA vagy az NSA várhatóan egy napon belül megfejti file-unkat."

(Kernighan Brian W. és Plauger P. J. A programozás magasiskolája. Műszaki. 1982., a példa Java implementációja itt van: www.tankonyvtar.hu/informatika/javat-tanitok-1-1-1-080904-1)

A második labor "izometrikus-szöszmötölős" példája a Page Rank algoritmus megvalósítása volt, íme a harmadiké: törjünk fel saját C progival egy exoros titkos szöveget!

Aki nem ismeri, a fenti könyvben a részletes leírás, vagy itt a Java változathoz egy kis Móricka rajzot is készítettem anno: http://www.tankonyvtar.hu/informatika/javat-tanitok-1-1-1-080904-1 kb. a lap közepén a "1.12. példa - Titkosítás kizáró vaggyal" pont alatt.

S íme a C implementáció:

 

Ahogyan használd:

nbatfai@hallg:~/c$ more tiszta.szoveg
Nem tudok kimerítő leírást adni arról, hogy hogyan tudsz megtanulni
programozni -- nagyon összetett tudásról van szó. Egyet azonban
elárulhatok: a könyvek és tanfolyamok nem érnek túl sokat (sok,
valószínűleg a legtöbb hacker autodidakta). Aminek van értelme:
(a) kódot olvasni és kódot írni.

Hogyan lesz az emberből Hacker
http://esr.fsf.hu/hacker-howto.html

Kódolásnbatfai@hallg:~/c$ gcc e.c -o e -std=c99
nbatfai@hallg:~/c$ ./e kercerece <tiszta.szoveg >titkos.szoveg
nbatfai@hallg:~/c$ more titkos.szoveg
KRIKSZKRAKSZ bináris szemét
Dekódolás:

nbatfai@hallg:~/c$ ./e kercerece <titkos.szoveg
Nem tudok kimerítő leírást adni arról, hogy hogyan tudsz megtanulni
programozni -- nagyon összetett tudásról van szó. Egyet azonban
elárulhatok: a könyvek és tanfolyamok nem érnek túl sokat (sok,
valószínűleg a legtöbb hacker autodidakta). Aminek van értelme:
(a) kódot olvasni és kódot írni.

Hogyan lesz az emberből Hacker
http://esr.fsf.hu/hacker-howto.html

3 kisbajnokság

Ennyit kap, aki egy nap alatt (természetesen a saját maga írta C progijával) feltöri a következő titkos szöveget: www.inf.unideb.hu/~nbatfai/titkos.szoveg Határidő: feb. 29. 08 óra 00, perc, egy kommentben kérem a titkos kulcsot és a tiszta szöveget. Sokat segítek: 8 betű a titkos kulcs és minden betű számjegy (kvázi dupla PIN kód :)

Tekerj a tovább linkre a labormunkához:

Megint egyetlen állomány "darabjait" írva, s mivel most alakítjuk ki a gépelési-hibázási stílusunkat, szokásainkat, még mindig képben... a tiszta_lehet fgv. megtippeli, hogy a dekódolt szöveg a tiszta, vagy arra

 

az exor elvégzi majd a módosítást, ha beírod a logikai műveletet és a kulcson való lépegetést 

a main() beolvassa a titkos szöveget, nem használ két egyforma tárolót a kódolt és a dekódolt szövegnek, ezért idővel nem takarékos módon :) kétszer alkalmazza ugyanazt az éppen kipróbált titkos kulcsot: 

néhány ciklussal legyártjuk az összes lehetséges kulcsot

Ja, a törendő szöveg: www.inf.unideb.hu/~nbatfai/titkos.szoveg2

Aki sirabizálta a tiszta_lehet által ontott potenciális töréseket, az tudja igazán értékelni a következő kis továbbfejlesztést:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

23 komment

Címkék: plb plk deik prog labor labdarúgó bajnokság és kupa

A bejegyzés trackback címe:

https://progpater.blog.hu/api/trackback/id/tr904200968

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

phloriaN 2012.02.25. 11:34:27

Két kérdés merült fel bennem így hirtelen:

PLB-ben "visszavágók" lesznek?
illetve
Körülbelül mikor kezdődne a Bajnokság?

nb · http://fersml.blog.hu 2012.02.25. 11:37:54

@phloriaN: ha maradunk a 8 csapatos rendszerben, akkor 7-8 hét kell a PLB-hez, ha nincsenek visszavágók (persze lehet 2 mérkőzés is egy héten egy csapatnak, így a 7-8 hétbe a visszavágós rendszer is beleférne)

A cél, hogy ne lógjunk ki a szorgalmi időszakból, illetve pár héttel még az elején adjunk esélyt a most prog1-et hallgatóknak, hogy Ők is próbálhassanak csatlakozni.

kecske20 2012.02.25. 20:33:32

@nb: Milyen címre lehet küldeni a TDP-t, és a videót?

nb · http://fersml.blog.hu 2012.02.28. 11:43:07

@nb: pontosabban majd jöhet, várjuk meg azt a pár hetet, amíg finomítjuk a koncepciót és majd jelzem, ha várjuk.

mamenyaka (törölt) 2012.02.28. 19:23:48

(kisbajnokság) A megfejtés:
mek.niif.hu/00800/00849/html/01.htm#13
Kulcs: 84848484

*bohóc* 2012.02.29. 10:24:40

Mi történik, ha a hívasok_szama-nakdefinícióját leviszed a main elé?

Azt írja ki, hogy: 1428.

S ha a régi helyén extern int hivasok_szama; extern deklarációt alkalmazol?

Azt írja ki, hogy 1418.

Ha jól tudom 0.5-0.5 pontért volt.

jakaba 2012.02.29. 10:57:13

Mi történik, ha a hívasok_szama-nak definícióját leviszed a main elé? S ha a régi helyén extern int hivasok_szama; extern deklarációt alkalmazol?
Az alábbi videót készítettem demonstrációként a fenti kérdésekre:
www.youtube.com/watch?feature=player_embedded&v=a-a-QwNR7SE

A main elé vitt definíció hatása az lesz, hogy a fuggveny nevű függvény nem fogja ismerni az adott változót, tehát fordítási hibát fog jelezni a fordító.

*bohóc* 2012.02.29. 13:00:06

Rájöttem a hibámra, köszi a segítséget @jakaba
Másik feladat:első diasor 66-os fóliája.
Mit ír ki? 8 2 2
Sajnos nem sikerült feltöltsem róla a képet.

*bohóc* 2012.02.29. 13:02:30

printf("%d\n", sizeof(char) * 8);
Jelen esetben (függvényhívás) talán nem érezhető triviálisan a kifejezés típusa: a hívás eredménye típusú.

Ez a része 1*8at vagyis 8at ír ki, majd még két printf-be téve, még két 2est.

mamenyaka (törölt) 2012.02.29. 14:28:21

+3 szálas program
+3 titkos.szoveg feltörése
+2 titkos.szoveg.labor feltörése (laboron)

mamenyaka (törölt) 2012.03.01. 08:30:50

titkos.szoveg2 - mek.niif.hu/01000/01010/01010.htm
Kulcs: 19841984

KDániel 2012.03.01. 14:18:57

2011 március 1 - 8 órás labor
Kiss Dániel +2 pont a titkos.szoveg.labor feltöréséért

thevr 2012.03.01. 20:32:53

2011 március 1 - 16:00-18:00

titkos.szoveg.labor exor törése +2 pont

bensz92 2012.03.01. 20:45:45

2011 március 1 - 16:00-18:00

titkos.szoveg.labor exor törése +2 pont

Tarr Bence

Schrödinger Macskája 2012.03.01. 23:42:21

@KDániel: adnál egy elérhetőséget nekem, ha lehetséges? facebook, msn, skype, ilyesmit, vagy csak küldd már át a forrásodat, ha lehet, hadd próbáljam ki légy szíves...

e-mail: peter.jano88@gmail.com

meg azt a tail-os parancsot, mer tkimaradt... :( köszi előre is

thevr 2012.03.02. 01:05:34

@Schrödinger Macskája:

A tail-es parancs:

tail -f <kimenet> | grep Kulcs

bensz92 2012.03.02. 12:32:42

double
atlagos_szohossz ( const char *titkos, int titkos_meret)
{
int sz = 0;
for (int i = 0; i < titkos_meret; ++i)
if (titkos[i] == ' ')
++sz;

return (double) titkos_meret / sz;
}

int
tiszta_lehet (const char titkos[], int titkos_meret)
{
// a tiszta szoveg valszeg tartalmazza a gyakori magyar szavakat

double szohossz = atlagos_szohossz (titkos, titkos_meret);

return szohossz > 6.0 && szohossz < 9.0
&& strcasestr (titkos, "hogy") && strcasestr (titkos, "nem")
&& strcasestr (titkos, "az") && strcasestr (titkos, "ha")
&&! strcasestr (titkos, "ee") &&! strcasestr (titkos, "aa")
&&! strcasestr (titkos, "ii") &&! strcasestr (titkos, "oo")
&&! strcasestr (titkos, "uu") ;

;

}

Ezzel a kódrészlettel a titkos.szoveg.labor úgy törhető hogy csak a keresett kódot adja a kimenetre. Nem kell keresgélni utánna.

KDániel 2012.03.02. 21:28:38

Csinálgattam a 2011-es emelt infó programozási feladatot, már kész is van egy kis hibával.
Az egyik feladatban ki kell listázni egy fájlba az azonos létrafokú 5 betűs szavakat (létrafok az 5 betűs szavak középső 3 betűje) és az én programom ezt meg is csinálja, csak a szócsoport minden szavánál megcsinálja a csoportosítást.
Egész pontosan így csinálja:
arcok
arcon
arcot

arcon
arcon
arcot

arcot
arcon
arcot

arcuk
arcul

arcul
arcul

Egy fapados megoldással megoldottam, de érdekelne, hogy tudnátok-e erre valami korrektebb megoldást?
(Én úgy oldottam meg, hogy letároltam a szócsoport szavait és ha a következő szócsoport első szava nincs a letároltak között, akkor írta csak a fájlba)

a progim (feladatleírás+forrásfájlok+forráskód): data.hu/get/4797474/erett.zip

phloriaN 2012.03.08. 17:25:52

"...Egy fős csapatok jelentkezhetnek, maximum néhány, de tipikusan rövid, TDP [2] jellegű pdf
állománnyal, amelyben a hallgatók röviden bemutatják a csapatukat, illetve egy YouTube
videó címét, amely bemutatja, hogy csapatuk legyőzte a torna kvalifikációs csapatát..."

-Az itt említett Youtube videó abban az esetben is szükséges, ha a csapat a korábbi PLB-n 4. helyezést ért el?
-Tekintve hogy robotfoci, nem kézenfekvőbb egy .rcg fájl?
süti beállítások módosítása