ePerTutti
Appunti, Tesina di, appunto informatica

VARIABILE STRUTTURATA RECORD

Scrivere la parola
Seleziona una categoria

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:

VAR Con la type, è come se si creasse un modello ( o prototipo),

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:

Begin

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:

Begin

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