|
Procedure
Spesso, soprattutto in programmi complessi e piuttosto elaborati, ci troviamo
dinanzi al problema di ripetere uno stesso procedimento più volte all'interno
dello stesso programma.
La soluzione a questo problema è data dal fatto che possiamo memorizzare una
procedura e ripeterla a piacimento durante la stesura del programma.
Questa utilissima funzione ha la seguente sintassi:
PROCEDURE nomeprocedura;
BEGIN
blocco istruzioni
....
....
END;
E' importante dire che i precedenti comandi devono essere digitati tra il
settore dichiarativo e il corpo del programma (per intenderci, prima del
BEGIN iniziale).
Per richiamare una procedura durante il programma bisogna digitare il nome
della procedura seguito da un punto e virgola(;).
Esempio: Modificare il programma precedente inserendo una procedura.
PROGRAM numeri_casuali;
USES crt;
VAR a,b,c:INTEGER;
PROCEDURE output; ( * Qualsiasi nome va bene * )
BEGIN
WRITELN(' Il numero estratto è ',c);
READLN;
END;
BEGIN
CLRSCR;
RANDOMIZE;
c:=RANDOM(10); ( * Questo comando permette all' elaboratore di generare un
numero a caso compreso tra 0 e il numero indicato in
parentesi. Il massimo consentito è 255 * )
CASE c OF
7:BEGIN
output;
END;
9:BEGIN
output;
END;
3:BEGIN
output;
END;
ELSE
BEGIN
WRITELN(' Il numero uscito è diverso da 3 7 e 9);
END;
END;
In questo caso una procedura è addirittura una perdita di tempo poichè
le istruzioni da riscrivere sono poche ma in casi più complessi fanno
risparmiare tempo e fatica.
A P P E N D I C E A
------------------------
GLI ERRORI DEL TP
=================
Spesso (fin troppo spesso), nella digitazione del programma è probabile che
siano presenti errori: mancato punto e virgola(;) alla fine di un istruzione,
valore alfanumerico dato ad una variabile numerica, ecc.
Per correggerli il TP , al momento della compilazione, mostra in alto dei
messaggi di errore che, malauguratamente per chi non lo conosce, sono in
inglese!
Qui di seguito c'è una brevissima guida su come correggere gli errori più
comuni:
N.B. Nel caso in cui l' errore non sia presente nella tabella, con un buon
vocabolario di inglese si può tentare di capire l' origine dell' errore e
quindi correggerlo.
1) Out of memory : Il compilatore non ha abbastanza memoria per eseguire o
compilare il programma. Provare a cambiare destinazione del codice eseguibile.
(Vedi Capitolo1)
2) Unknown identifier : Identificatore sconosciuto. Non abbiamo dichiarato una
variabile.
3) Duplicate identifier: Identificatore duplicato. Due variabili identiche.
Cambiarne una.
4) Syntax error: E' sbagilata la sintassi di un istruzione.
5) Type mismatch: Si è dichiarata una variabile diversamente da come si è
considerata. Ad esempio si è caricato il valore 1 in una variabile di tipo
CHAR;
6) String constant exceeds lines: Si è dimenticato di mettere la stringa
di testo fra apici.
7) Unespected end of file: Il numero dei BEGIN non coincide col numero
degli END. Verificarli.
|