Sei sulla pagina 1di 9

I vettori

o array ad una dimensione


Pag. 48 testo di 3a
(pag. 110 edizione vecchia)
5
I vettori
Finora abbiamo sempre utilizzato variabili
semplici,
A cioè variabili che potessero contenere
un solo valore.
Ma se dovessimo, ad es.:
1. Ordinare un elenco di valori (in modo crescente o
decrescente)
2. Visualizzare dei valori in ordine inverso rispetto
all’input
3. Dopo aver calcolato la media di N valori, calcolare
quanto differisce ciascuno di essi da essa.
4. …….
…. non sarebbe possibile.
Perché?
Perché dovremmo avere in memoria tutti i
valori inseriti, cosa impossibile se questi
valori fossero memorizzati via via nella stesa
variabile (A ad es.)
Qualcuno potrebbe dire:
“Allora usiamone diverse: A, B, C, …”
Ma se sono un numero imprecisato (N)
come faremmo?
Non sapremmo quante variabili utilizzare e
quindi non potremmo risolvere il problema.
Ci vengono in aiuto ...
I vettori
Un vettore (o array monodimensionale) è un insieme di dati
tutti omogenei fra loro (cioè dello stesso tipo: int, float,
char,….).
In altre parole un vettore è una variabile unica ma
strutturata, cioè composta da più valori omogenei.
Quindi è identificato da un nome unico e gli elementi si
distinguono tramite un numero, detto indice.
Il numero di elementi di un vettore si chiama dimensione.
In C++ il primo elemento ha indice 0, l’ultimo dimensione-1.
Si può immaginare un array come una sorta di casellario, le cui
caselle sono dette elementi (o celle) dell’array stesso.
Ciascuna delle celle si comporta come una variabile tradizionale.
Nell’es. V è il nome di un vettore di 6 elementi, numerati da 0 a 5.
Per far riferimento al primo elemento si scrive V[0], all’ultimo V[5], ad
uno generico V[ i ].

16 7 24 18 5 1

V 0 1 2 3 4 5
Dichiarazione
di un vettore in C++
Per dichiarare un vettore se ne deve specificare il tipo, seguito da un
nome valido e da una coppia di parentesi quadre al cui interno è
racchiusa un’espressione costante, che definisce la dimensione
dell’array.

Per esempio:
float v[10]; 🡪 definisce un vettore di nome v di 10 numeri reali
char lettere[5];🡪 definisce un vettore di nome lettere di 5 caratteri
Proviamo ad es. a
risolvere il problema
2 della diapo 2

Input elementi del vettore V 🡪

Output elementi del vettore V al


contrario 🡪
#include <iostream>
using namespace std;
Ed ora vediamo la int main()
{
sua codifica in C++: int n,i;
float v[10]; //qui si dimensiona il vettore
/* la dimensone è fissata al momento della
dichiarazione del vettore e NON può più essere
modificata nel corso del programma*/
do
{
cout<<"inserire numero di elementi (max 10): ";
cin>>n;
}
while(n<=0 || n>10); /*occorre SEMPRE controllare
di NON superare la dimensione max. del vettore */
//inserimento dati nel vettore
for(i=0;i<n;i++)
{
cout<<"ins. "<<(i+1)<<"^ valore: ";
cin>>v[i];
}
//visualizzazione elementi del vettore dall'ultimo inserito al
primo
for(i=n-1;i>=0;i--)
cout<<v[i]<<endl;
system("pause");
}