program muveletek; {P.M. - 2.fv, 16. gyak., HBV} {Veremkezeles Forth-ban (csillagaszok talaltak ki maguknak - de akkor mi kozunk ehhez?): swap - a felso ketto csereje; dup - a legfelsobol lesz (felul) megegy; rot - a felso harmat (ciklikusan) forgatja; pick - a legfelso.erteket mutatonak vette, es ahanyadikra mutat, azt kiolvasta; pick2 - uaz., de ki is veszi} uses verem, crt; var v:Tverem; {A unit alapjan} {procedure swap(var ve:Tverem); var sv1,sv2:TelemTip; begin ve.verembol(sv1); ve.verembol(sv2); ve.verembe(sv1); ve.verembe(sv2); end;} procedure swap(var ve:Tverem); var sv1,sv2:TveremElemMut;csere_sv:TelemTip; begin sv1:=ve.teto; sv2:=ve.teto^.kov; csere_sv:=sv1^.ertek; sv1^.ertek:=sv2^.ertek; sv2^.ertek:=csere_sv; end; {procedure dup(var ve:Tverem); var sv:TelemTip; begin ve.verembol(sv); ve.verembe(sv); ve.verembe(sv); end;} procedure dup(var ve:Tverem); var sv:TveremElem; begin { sv.ertek:=ve.teto^.ertek; sv.kov:=ve.teto; ve.teto.ertek =ve.teto^.kov^. ve.teto^.kov^.ertek:=sv.ertek; ve.teto^.kov:=sv.kov;} end; {procedure rot(var ve:Tverem); var sv1,sv2,sv3:TelemTip; begin ve.verembol(sv1); ve.verembol(sv2); ve.verembol(sv3); ve.verembe(sv1); ve.verembe(sv3); ve.verembe(sv2); end;} procedure pick(var ve:Tverem); begin end; begin dup(v); write(#07); end.