Facebook Twitter Pinterest Indice dei contenuti Record e Tabelle definizioni generaliAlgoritmi di esempio in flow chart e pseucodiceUso di tabelle in C++ dettagli di programmazione Tabelle e Record Nella programmazione quando si devono memorizzare grosse quantità di dati nella memoria centrale del calcolatore è opportuno definire delle strutture dati astratte costituite da una raccolta di tipi semplici aggregati attraverso un nome collettivo e identificati da un indice. Ad esempio la gestione di una rubrica telefonica può essere ottenuta definendo per ciascun soggetto il nome, cognome, l’indirizzo e il numero di telefono. Se i soggetti sono molti ad esempio già in numero superiore a 10, la gestione di queste informazioni diventa gravosa e pertanto si conviene organizzare tali informazioni in una struttura di tipo tabella in cui ogni riga costituisce il recapito telefonico di un soggetto. Una struttura dati di questo tipo in memoria centrale è detta appunto tabella, su memoria di massa (su un unità di memorizzazione tipo disco fisso, unità a dischetti) è detto file.Per poter definire una tabella è importante definire la struttura dati elementare di cui è costituita la tabella: il record. Un record è una variabile strutturata eterogenea composta da elementi di tipo diverso e identificata da un nome collettivo. Ad esempio nell’esempio precedente si può definire un record di nome “recapito”. Le componenti del record sono detti campi. E’ utile quando si definisce in un algoritmo e quindi programma un record definire un modello di tale struttura che dia informazioni anche sulla dimensione del record (dimensione logica). La dimensione logica di un record è la somma delle dimensioni di tutte le dimensioni dei campi che formano il record stesso. Inoltre alcuni campi come quelli alfanumerici sono definiti dall’utente altri come quelli numerici hanno dimensioni prefisssate e la loro dimensione varia a seconda del linguaggio di programmazione in cui si codifica l’algoritmo. Ipotizzando che i numeri interi si rappresentano con interi di 2 o 4 byte a massimo e che i…
Indice dei contenuti
- Record e Tabelle definizioni generali
- Algoritmi di esempio in flow chart e pseucodice
- Uso di tabelle in C++ dettagli di programmazione
Tabelle e Record
Nella programmazione quando si devono memorizzare grosse quantità di dati nella memoria centrale del calcolatore è opportuno definire delle strutture dati astratte costituite da una raccolta di tipi semplici aggregati attraverso un nome collettivo e identificati da un indice. Ad esempio la gestione di una rubrica telefonica può essere ottenuta definendo per ciascun soggetto il nome, cognome, l'indirizzo e il numero di telefono. Se i soggetti sono molti ad esempio già in numero superiore a 10, la gestione di queste informazioni diventa gravosa e pertanto si conviene organizzare tali informazioni in una struttura di tipo tabella in cui ogni riga costituisce il recapito telefonico di un soggetto. Una struttura dati di questo tipo in memoria centrale è detta appunto tabella, su memoria di massa (su un unità di memorizzazione tipo disco fisso, unità a dischetti) è detto file.
Per poter definire una tabella è importante definire la struttura dati elementare di cui è costituita la tabella: il record. Un record è una variabile strutturata eterogenea composta da elementi di tipo diverso e identificata da un nome collettivo. Ad esempio nell'esempio precedente si può definire un record di nome "recapito". Le componenti del record sono detti campi. E' utile quando si definisce in un algoritmo e quindi programma un record definire un modello di tale struttura che dia informazioni anche sulla dimensione del record (dimensione logica). La dimensione logica di un record è la somma delle dimensioni di tutte le dimensioni dei campi che formano il record stesso. Inoltre alcuni campi come quelli alfanumerici sono definiti dall'utente altri come quelli numerici hanno dimensioni prefisssate e la loro dimensione varia a seconda del linguaggio di programmazione in cui si codifica l'algoritmo. Ipotizzando che i numeri interi si rappresentano con interi di 2 o 4 byte a massimo e che i numeri reali da 4 a 16 byte non è difficile calcolare la dimensione logica del record.
Infatti ogni carattere alfanumerico in base alla sua codifica ASCII occupa lo spazio di un solo byte o di almento due byte nella rappresentazione Unicode. Nell'esempio introduttivo se ne rappresenta il tracciato record che è una rappresentazione formale della struttura dati (modello) che il programmatore definisce.
Nell'esempio proposto il tracciato record è:
Recapito | |||
Cognome | Nome | Indirizzo | Telefono |
15 caratteri | 15 caratteri | 50 caratteri | 10 caratteri |
Dimensione logica 90 caratteri = 90 byte in codifica ASCII 8 bit o 180 in codifica Unicode |
Poiché il programmatore nel problema ha necessità di avere più record dello stesso tipo allora si definisce una tabella una variabile strutturata identificata da un nome collettivo in cui ogni singolo record è individuato da un indice intero.
Selezione di un campo specifico in un record e di un campo specifico nella tabella.
L'operazione di selezione di un campo specifico all'interno di un record avviene secondo la nomenclatura nome-record.nome-campo ad esempio se nel record "recapiti" si vuole selezionare il campo "indirizzo" si scriverà recapiti.indirizzi. In una tabella se si vuole selezionare del decimo decimo record il campo "telefono" la nomenclatura adottata ipotizzando che il nome della tabella sia "tb" e l'indice della tabella e/o vettore di record i:
tb(10).telefono
Come esempio poniamo il seguente problema dato una tabella di N record del tipo "recapito" caricare la tabella.
L'utente inserisci a richiesta il numero dei contatti che devono essere inseriti nella tabella.