[ jozef_k. @ 13.06.2009. 16:53 ] @
Zadatak kaze:

Konstruirati Turingov stroj koji zadane ulazne podatke sažima metodom LRE kompresije (length Run Encoding). Ćelija ulazne trake smatra se jednim nibbleom čija se vrijednost može kretati u rasponu 0-15 (preporuča se uporaba heksadekadskog zapisa). Turingov stroj treba slijedni zapis podataka prevesti u oblik u kojem će se za svaki podatak zapisati njegova vrijednost i broj uzastopnih ponavljanja na traci.

Primjer:
Podaci prije kompresije:
1125555AAAAA555FFF
podaci nakon kompresije:
122154A553F2

Algoritam rješenja koji meni pada na pamet zvuči otprilike ovako:

Turingov stroj bi se sastojao od jedne trake koja je beskonačna na desnoj strani. Pročita prvi znak upiše F na njegovo mjesto, te se miče do prvog blank (B) znaka u desno, kada naiđe na njega upiše taj znak na to mjesto i prelazi u odgovarajuće stanje. Onda se vraća lijevo do prvog F znaka te čita sljedeći, ako je znak kao prethodni prebacuje se u odgovarajuće stanje, opet ide desno do prvog blank polja i u njegovo mjesto upisuje broj 2. Pa ponovo lijevo do prvog F znaka procita sljedeci ako je isti upisuje 3 na krajnje desnom mjestu ako nije ide u neko drugo stanje, ponovo ide do kraja desno i upisuje odgovarajući znak... Malo jest komplicirano, ali nadam se da ste me shvatili.

Buduci da je znak ćelije nibble (4 bita) najveći broj koji mogu zapisati je F tj. 15, a ako bi mi se neki znak pojavio npr. 17 puta ispis na kraju bi trebao izgledati (npr. ako se br 1 pojavio 17 puta) ...1F12 (svaki znak je odvojena ćelija).

Sve ovo ovako lijepo izgleda, ali kad podjem raditi postaje haos radi broja stanja i prijelaza koja moram imati ovakvim načinom (trocifreni brojevi), stoga me zanima ima li kakav bolji način konstruiranja datog stroja ili modifikacija postojećeg te ako sam jos koji detalj zaboravio, a nisam smio itd. da ne duljim, svi komentari su dobrodosli.
[ jozef_k. @ 20.06.2009. 17:14 ] @
OK, turingov stroj i nije bas neko podrucje gdje ce ljudi uzeti jedno popodne pa da malo cituckaju o tome jer ih zanima (ja vjerojatno nebi nikad vise od samog naziva znao o njemu da nije faxa), pa vjerojatno zato nije bilo ljudi koji bi nekako pomogli,al kako bilo da bilo ja sam seminar zavrsio pa ako eto nekog slucajno bude zanimalo moze i procitati o cemu se radi i kako sam to rijesio. IMa i f-ja prijelaza pa mozete i odsimulirati. eto cisto da ne bude uzaludna tema, a sad moze lock.

LINK: http://www.speedyshare.com/750569607.html