MODULE stekred; (* prvo importujemo cele module, da bi mogli da koristimo istoimene procedure (kao MakeNull) iz oba modula *) IMPORT RedOpsl; IMPORT Stek; (* nakon toga importujemo i sve raznoimene delove, da ne bi morali da kucamo puna imena modula svaki put i kad ne moramo *) FROM Stek IMPORT StekTip, Top, Pop, Push; FROM RedOpsl IMPORT RedOpslTip, First, PopFirst, AddRear; FROM InOut IMPORT ReadString,WriteString,Write,WriteLn; FROM Strings IMPORT Length; VAR str : ARRAY[1..256] OF CHAR; q :RedOpslTip; s :StekTip; i : CARDINAL; ok,palin : BOOLEAN; c,c1 : CHAR; BEGIN WriteString("unesite string: "); ReadString(str); (* inicijalizujemo strukture *) Stek.MakeNull(s); RedOpsl.MakeNull(q); (* ubacujemo elemente u stek *) FOR i:=1 TO Length(str) DO Push(s, str[i], ok); END; (* ubacujemo elemente u red opsl *) FOR i:=1 TO Length(str) DO AddRear(q, str[i], ok); END; WriteLn; WriteString("sadrzaj steka"); WriteLn; WHILE NOT Stek.Empty(s) DO Top(s,c,ok); Pop(s,ok); Write(c); END; WriteLn; WriteString("sadrzaj reda opsl."); WriteLn; WHILE NOT RedOpsl.Empty(q) DO First(q,c,ok); PopFirst(q,ok); Write(c); END; WriteLn; END stekred.