Pofon egyszerû, ez csak példa. Legyen a következõ egy txt fájlban: DABBACDABBACD
alapszótárunkban van: 1. - A ; 2. - B ; 3. - C ; 4. - D
Ekkor ugye az történik, hogy nézi az algoritmus a D betût, na ilyenünk van már, de vegyük hozzá az A karaktert, így kapunk DA -t. Ilyenünk még viszont nincs, ezért felvesszük a szótárba: 5. - DA
majd D -t kódolom (4). Most megyek az A -hoz, van már ilyen, ezért hozzáveszem B -t, így lesz AB, ami viszont megint nincs, ezért felveszem AB -t a szótárba 6. sorszámmal, és kódolom A -t (1). És így tovább.
Ugye a prolog képes adatbáziskezelésre. Legyen pl a köv adatbázisunk
kod(a,1).
kod(b,2).
kod(c,3).
kod(d,4).
Õ képes átlátni az egész adatbázist, és összehasonlítani már egy bent lévõvel, továbbá ha nem létezik akkor felveszi. De viszont, azt hogy mondom meg neki, hogy hát légyszives karakterenként vizsgáld már a beolvasott fájlt? C++ -ban viszont lehet karakterenként vizsgálni, viszont olyan adatbáziskezelési móddal nem lehet élni, mint amilyen a Prologban van.
Ezért volnék kíváncsi vki megoldására (nem lopni... meríteni), vagy tanácsaira, aki már csinált ilyet.