Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Gli array (vettori) in c++, Appunti di Informatica

Questi appunti sono stati interamente formattati su word per fornire una spiegazione chiara e precisa del concetto. Il contenuto sono gli array con richiami teorici, sintassi c++ e lo shift degli elementi.

Tipologia: Appunti

2022/2023

In vendita dal 05/02/2023

Mentore_intellettuale530
Mentore_intellettuale530 🇮🇹

31 documenti

1 / 4

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Sezione A2 INFORMATICA 3C
I VETTORI (ARRAY)
Un vettore (o array monodimensionale) è una struttura di dati statica, di tipo sequenziale, identificata
da un nome e costituita da un insieme di elementi omogenei fra loro, individuabili per mezzo di un
indice. Il vettore è l'insieme di variabili dotato di un nome, che identifica il vettore come struttura: i
suoi singoli elementi verranno referenziati specificando la loro posizione relativa all'interno di tale
struttura (mediante l'indice). Si può immaginare un array monodimensionale come una specie di
"casellario", le cui caselle sono dette elementi (o celle) dell'array stesso. Ciascuna delle celle si
comporta come una variabile tradizionale; tutte le celle sono variabili di uno stesso tipo preesistente,
detto tipo base dell'array. Si parla perciò di array di interi, array di caratteri, array di stringhe e così
via. Ciascuna delle celle dell'array è identificata da un valore indice, generalmente numerico, che può
assumere come valori numeri interi consecutivi che partono da 0 o da 1. Si può quindi parlare delle
celle di indice 0, di indice 1 e, in generale, di indice N, dove N è un intero compreso fra 0 (o 1) e il
valore massimo per gli indici dell'array (che determina la dimensione dell'array). Nel linguaggio C/C
++ ogni elemento di un vettore viene identificato da un numero, contando a partire da 0 e arrivando
a N - 1 (se la dimensione è uguale a N = 10 il valore massimo dell'indice sarà 9).
Pensaci bene: quando diciamo che un palazzo ha 5 piani, in realtà
ha sei livelli: infatti il piano terra è il primo livello, il primo piano
il secondo, e così via. Lo stesso succede nell'array: se, ad
esempio, abbiamo un array di dimensione 6, i suoi indici
andranno da 0 a 5 e l'elemento richiamato tramite l'indice 3 sarà
il quarto elemento, perché si inizia a contare da 0.
SINTASSI
pf3
pf4

Anteprima parziale del testo

Scarica Gli array (vettori) in c++ e più Appunti in PDF di Informatica solo su Docsity!

I VETTORI (ARRAY)

Un vettore (o array monodimensionale) è una struttura di dati statica, di tipo sequenziale, identificata da un nome e costituita da un insieme di elementi omogenei fra loro, individuabili per mezzo di un indice. Il vettore è l'insieme di variabili dotato di un nome, che identifica il vettore come struttura: i suoi singoli elementi verranno referenziati specificando la loro posizione relativa all'interno di tale struttura (mediante l'indice). Si può immaginare un array monodimensionale come una specie di "casellario", le cui caselle sono dette elementi (o celle) dell'array stesso. Ciascuna delle celle si comporta come una variabile tradizionale; tutte le celle sono variabili di uno stesso tipo preesistente, detto tipo base dell'array. Si parla perciò di array di interi, array di caratteri, array di stringhe e così via. Ciascuna delle celle dell'array è identificata da un valore indice, generalmente numerico, che può assumere come valori numeri interi consecutivi che partono da 0 o da 1. Si può quindi parlare delle celle di indice 0, di indice 1 e, in generale, di indice N, dove N è un intero compreso fra 0 (o 1) e il valore massimo per gli indici dell'array (che determina la dimensione dell'array). Nel linguaggio C/C ++ ogni elemento di un vettore viene identificato da un numero, contando a partire da 0 e arrivando a N - 1 (se la dimensione è uguale a N = 10 il valore massimo dell'indice sarà 9). Pensaci bene: quando diciamo che un palazzo ha 5 piani, in realtà ha sei livelli: infatti il piano terra è il primo livello, il primo piano il secondo, e così via. Lo stesso succede nell'array: se, ad esempio, abbiamo un array di dimensione 6, i suoi indici andranno da 0 a 5 e l'elemento richiamato tramite l'indice 3 sarà il quarto elemento, perché si inizia a contare da 0.

SINTASSI

VETTORI IN C++

In molti problemi di informatica si ha la necessità di aggregare molti dati di tipo semplice, per facilitarne la rappresentazione e rendere più veloce il loro ritrovamento. Per ottenere questi scopi, i dati vengono organizzati in un insieme a cui viene attribuito il nome di “ struttura di dati ”. Il vettore è un insieme di elementi omogenei tra loro. Con una variabile possiamo indicare solo un dato, con il vettore possiamo indicare tanti dati dello stesso tipo con un solo nome collettivo di variabile: l’identificatore del vettore. Un vettore si definisce con la seguente sintassi: tipo nomeVettore [dimensione]; es: int T[10]; Le componenti di un vettore possono essere non solo numeriche, ma di uno qualsiasi dei tipi standard del linguaggio C (int,char, float). Un vettore, in generale, è una sequenza finita di elementi omogenei fra loro (tutti dello stesso tipo) e contigui (giacenti in memoria uno accanto all’altro). Di solito un vettore viene rappresentato come una successione di celle: Una matrice è un vettore a più dimensioni. Nel caso di due dimensioni, la matrice viene rappresentata con una tabella. UTILITA’ DEL VETTORE Talvolta, una sequenza di valori può essere gestita senza necessariamente memorizzarli tutti, ma nella maggior parte dei casi è necessario conservarli per operare in tempi differenti. Il vettore rende disponibile una serie di celle, nelle quali possono trovare posto i valori da memorizzare, quindi è utile perché può conservare tutti i valori di una sequenza. GESTIONE DI UN VETTORE Bisogna dichiarare quanti elementi al massimo potranno trovare posto nel vettore, e di quale tipo. Questa operazione viene definita dimensionamento del vettore. Dato che un vettore di solito contiene più valori, si pone il problema di indicare a quale di essi ci vogliamo riferire. È sempre necessario accompagnare il vettore con una variabile numerica intera, detta indice, che di volta in volta indica la posizione dell’elemento a cui ci si riferisce. In C++ gli indici di vettori e matrici partono da 0. CARICARE UN VETTORE DI N ELEMENTI CON NUMERI INTERI INSERITI DA TASTIERA Si dichiara un intero N e si chiede all’utente di inserire il valore da tastiera. Con un ciclo do-while controlliamo questo valore e se è minore o uguale a 0, richiediamo l’inserimento. Dopo dichiariamo un vettore di N elementi int v[N]. Poi con un ciclo for, con un indice i che scorre il vettore dalla prima posizione, inseriamo gli elementi. Supponendo che N è 5, inseriamo i seguenti valori da tastiera: 3, 5, 12, - 2, 9.

LO SHIFT DEGLI ELEMENTI DI UN VETTORE

Esempio :Vai al cinema con un gruppo di amici. Dopo esserti seduto, noti che un tuo amico non è vicino alla sua ragazza. Decidi, quindi, di far scalare ognuno di un posto, in modo da liberare la poltrona vicina al tuo amico. Hai appena effettuato uno shift. Lo shift è l'operazione che consente di spostare di una posizione (a destra o a sinistra) tutti gli elementi di un vettore (shift completo) o solo una parte di essi (shift parziale). Possiamo quindi effettuare uno:

  • shift completo a sinistra;
  • shift completo a destra:
  • shift parziale a sinistra;
  • shift parziale a destra. Nello shift completo a sinistra, tutti gli elementi presenti nel vettore saranno spostati di una posizione verso sinistra (il contenuto della seconda posizione verrà inserito nella prima, il contenuto della terza sarà a sua volta spostato nella seconda e così via). In tal modo, l'elemento presente nella prima posizione sarà perduto, mentre quello presente nell'ultima sarà duplicato. Rispetto all'operazione descritta precedentemente, nello shift completo a destra varia solo l'ordine in cui vengono eseguite le assegnazioni. Sarà quindi il contenuto dell'ultima posizione a essere perso, mentre quello della prima sarà duplicato. Lo shift parziale a sinistra o destra si esegue quando occorre spostare solo alcuni elementi adiacenti del vettore. Per fare questo, è indispensabile conoscere gli indici estremi del gruppo che si intende spostare. Analizziamo la seguente figura, che rappresenta i grafici dei due shift degli stessi quattro elementi, una volta a sinistra e una volta a destra.