program ESAME; var x, i, w: integer; procedure F (y: integer); var z: integer; begin z := y; x := z; end; function Duplica (var y: integer): integer; begin y := 2 * y; Duplica := y; end; begin w := 7; i := 1; repeat F(i); writeln('...', x, '...'); i := Duplica(i); until i > 5; end.
program IMMAGINI; {gli elementi del tipo IMMAGINE rappresentano delle immagine a colori in modo digitale, } {ogni elemento della matrice rappresenta un colore secondo un opportuno meccanismo di } {codifica } const L = 7; H = 5; {larghezza e altezza delle immagini} type IMMAGINE = array[1..H, 1..L] of integer; {sottoprogramma che controlla se un'immagine e' a righe orrizontali} {per esempio quella che segue lo e'} { 3 3 3 3 3 3 3} { 4 4 4 4 4 4 4} { 3 3 3 3 3 3 3} { 4 4 4 4 4 4 4} { 3 3 3 3 3 3 3} { mentre quest'altra non lo e' } { 3 3 0 3 3 3 3} { 4 4 4 4 4 4 4} { 0 3 3 0 3 3 3} { 4 4 4 4 4 4 4} { 3 3 3 0 3 3 3} {sottoprogramma che controlla se un'immagine e' a bande orrizontali} {per esempio quella che segue lo e'} { 3 3 3 3 3 3 3} { 3 3 3 3 3 3 3} { 3 3 3 3 3 3 3} { 4 4 4 4 4 4 4} { 4 4 4 4 4 4 4} {mentre quest'altra non lo e' } { 3 3 3 3 3 3 3} { 3 3 3 3 3 3 3} { 3 3 3 3 3 3 3} { 3 3 3 0 3 3 3} { 4 4 4 4 4 4 4} {sottoprogramma che controlla se un'immagine e' a quadretti} {per esempio quella che segue lo e'} { 3 0 3 0 3 0 3} { 0 3 0 3 0 3 0} { 3 0 3 0 3 0 3} { 0 3 0 3 0 3 0} { 3 0 3 0 3 0 3} {mentre quest'altra non lo e' } { 3 3 3 3 3 4 4} { 3 3 3 3 3 4 4} { 3 3 3 3 3 4 4} { 4 4 4 4 4 4 4} { 4 4 4 4 4 4 4} .......... begin {dare un main per permettere di testare le procedure definite sopra} {dire poi esplicitamente su quali immagini devono essere chiamate} .......... end.