informatica |
VARIABILE STRUTTURATA RECORD
Fino a questo momento abbiamo considerato variabili strutturate che potevano contenere soltanto dati dello stesso tipo: Esempio:
un vettore poteva contenere solo dati di tipo intero, un altro solo di tipo reale un altro solo di tipo carattere, un altro di tipo stinga, o di tipo boolean, oppure di tipo byte.
La soluzione di problemi che avevano dati tutti omogenei poteva essere eseguita usando il vettore o la matrice.
Nel caso di dati eterogenei era necessario usare più vettori o più matrici:
Esempio:
Consideriamo il dato alunno, questo dato ha le seguenti caratteristiche:
Nome Cognome Classe num. di cell.
Come possiamo ben notare si tratta di dati eterogenei, quindi necessitiamo di più vettori paraleli.
Nome = string. [10];
Cognome = string. [15];
Classe = string. [2];
num. di cell = integer
La variabile record, invece, è un insieme compatto di elementi omogenei o eterogenei in cui inserisco i valori dei dati di un dato composto.
Ognuno di questi elementi è detto campo; ogni campo viene individuato tramite il proprio identificatore (definizione formale).
Esempio di record:
|
|
|
|
rec_1
Nome Cognome Classe N° di cell.
DEFINIZIONE IMPLEMENTATIVA DELLA TYPE:
Type
Rec_1 = record
nome, cognome: string [15];
classe: string [2];
cell: string [12];
end;
In questo modo abbiamo definito una variabile struturata:
DICHIARAZIONE NELLA VAR:
ma non si entra ancora nel livello operativo, mentre è nella
r1: rec_1; VAR possiamo dire che si entra nel livello operativo.
CARICAMENTO DI UN RECORD:
Readln(r1 . nome);
readln(r1 . cognome);
readln(r1 . classe);
readln(r1 . cell.);
writeln(r1 . cognome);
writeln(r1 . nome);
writeln(r1 . classe);
writeln(r1 . cell);
end
Come possiamo notare, noi abbiamo una serie di r1 che si ripetono, per evitare di occupare spazio e sprecare più tempo, esiste una maniera più conveniente per caricare un record:
With r1 do
Begin
readln(nome);
readln(cognome);
readln(classe);
readln(cell);
end;
end.
Privacy
|
© ePerTutti.com : tutti i diritti riservati
:::::
Condizioni Generali - Invia - Contatta