program printreverse; {legge dei numeri naturali dallo schermo e li mette in una pila; poi stampa la pila} uses ustack,naturali; var s:stack; procedure fillstack(var s:stack); {legge dei naturali e li mette in una pila} var nextnum:nat; begin writeln('Scrivi dei naturali e premi enter:'); while not eoln do begin nextnum.legginat(input); s.push(nextnum) end; end; procedure displaystack(var s:stack); {prende ogni elemento della pila e lo stampa} var success:boolean; nextnum:nat; begin while not s.isempty do begin s.pop(nextnum,success); nextnum.stampa; write(' ') end; writeln end; begin s.init; fillstack(s); displaystack(s); s.done end.