3° Anno TEORIA 8. Tipi di dati semplici | Page 4

8 : I dati e la loro struttura nella programmazione ( ARRAY , MATRICI , RECORD ) Vers . 8.3 – Febbraio 2024
LA STRUTTURA DATI VETTORE O ARRAY MONODIMENSIONALE
DEF : Un vettore o array monodimensionale è una struttura dati di tipo sequenziale , costituita da un insieme di elementi omogenei tra loro individuabili per mezzo di un “ indice ” ( ossia ad accesso diretto ).
Per quanto riguarda la modalità di allocazione è possibile realizzare un vettore o array sia a carattere statico che dinamico . Per quanto riguarda il supporto di memorizzazione è possibile memorizzare i valori appartenenti ad un vettore o array in strutture di memoria oppure in archivi o file .
N . B . Al momento ci limiteremo a trattre vettori o array a carattere statico memorizzati in opportune strutture di memoria presenti nella RAM ( ossia nella memoria di lavoro volatile ).
A causa della sequenzialità della struttura dati vettore l ’ indice , i cui valori devono appartenere all ’ insieme dei numeri naturali , definisce una relazione di ordine totale rispetto agli elementi componenti ossia permette di dire per ciascun elemento se precede o segue un altro nell ’ ambito del vettore stesso .
N . B . In PSEUDOCODIFICA per poter effettuare la dichiarazione di una variabile di questo tipo dovremmo scrivere :
< NomeVettore > : ARRAY [< MAXDIMENSIONE >] DI < TipoElemento > dove :
• < NomeVettore > contiene il nome che si stabilisce per il vettore ( in accordo alle regole di nomenclatura già fissate nella pseudocodifica per le variabli di tipo elementare );
• < MAXDIMENSIONE > è una costante intera CHE DEVE ASSUMERE OBBLIGATORIAMENTE un valore maggiore di zero ( per poter parlare di vettore almeno un elemento ci deve essere );
• < TipoElemento > è il tipo di dati posseduto da tutti gli elementi componenti ( detto anche tipo base del vettore )
Esempio : Se dichiaro v : ARRAY [ 8 ] DI INT mi riferirò ad un vettore o array monodimensionale contenente al massimo 8 elementi di elementi del tipo intero di nome v .
L ’ organizzazione usata nel vettore è rigida ossia comporta alcuni svantaggi quando occorre manipolare i suoi elementi :
1 . difficoltà di inserimenti o cancellazioni : proprio a causa della contiguità delle celle di memoria dove sono rappresentati gli elementi di un vettore , l ’ operazione di inserimento dovrebbe prevedere la riscrittura verso destra di tutti gli elementi a seguire ( shift a destra ) mentre l ’ operazione di cancellazione dovrebbe prevedere la riscrittura verso sinistra di tutti gli elementi a seguire ( shift a sinistra ) per non lasciare alcuna posizione di memoria inutilizzata nel vettore ;
2 . dimensione statica : è necessario fissare a priori un limite massimo di elementi che il vettore potrà contenere ( limite massimo non modificabile durante l ’ esecuzione ).
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 4