ESAME 15-07-99 (PASCAL)
Questionario cartaceo
Rispondere alle seguenti domande:
-
Trasformare il seguente numero in base 7 nel corrispondente in base 9:
123
-
Che cosa stampa il seguente programma Pascal?
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.
-
Descrivere brevemente in modo schematico la storia di un programma Pascal partendo da quando
viene scritto
sulla carta fino a quando il computer ritornerà i suoi risultati.
-
Scrivere un programma Pascal per stampare la lunghezza media delle righe di un file di
testo residente su disco di nome
"TERESA"; si assuma che le righe siano lunghe al
più 200.
Parte laboratorio
Completare il seguente frammento di programma Pascal come indicato dai commenti:
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.