9
Array Struttura numerate di dati

Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Embed Size (px)

Citation preview

Page 1: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Array

Struttura numerate di dati

Page 2: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Memorizzare molti dati• In informatica c’è spesso bisogno di memorizzare

ed elaborare un insieme costituito da molti dati.• Ad esempio, i cognomi degli allievi di una classe• Per fare questo si potrebbero utilizzare variabili

diverse, una per allievo! a = "Rossi"; b = "Bianchi"; c = "Neri"; ….

• Ma il metodo è sconsigliato perché ogni operazione su questi dati (esempio: trovare quanti allievi hanno il cognome che inizia per “B”) produrrebbe un numero enorme di istruzioni.

Page 3: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Gli array

•Tutti i linguaggi di programmazione forniscono un tipo di dati che contiene o memorizza un gruppo numerato di dati.•Ciascun dato viene detto elemento dell’array ed il numero assegnato a un elemento viene detto indice.•L’array può essere pensato come un insieme di celle numerate, ciascuna delle quali contiene un dato.•Le celle vengono numerate a partire da 0

N.B. Nello stesso array, i dati possono essere di tipo diverso (numeri, stringhe, booleani)

Rossi Bianchi Neri … … …

cella 0 cella 1 cella 2

Page 4: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Definizione di array

JavaScript permette di definire un array mediante una delle seguenti sintassi

var a = new Array(); // a è il nome dell’array

Crea un array vuoto, senza elementi.

Oppure

var a = new Array("Rossi", "Bianchi", "Neri");

Crea un array e assegna l’elenco dei suoi elementi.

Page 5: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Accesso agli elementi di un array

Per accedere (in scrittura o in lettura) agli elementi di un array si utilizza la sintassi

a[i]Dove a è il nome dell’array e i è l’indice dell’elemento.Ad esempio, se si è definito

var a = new Array("Rossi", "Bianchi", "Neri");Allora

alert(a[1]) mostra, nella finestra di alert, "Rossi"alert(a[8]) mostra, nella finestra di alert,

undefined a[0] = "Grigi" il primo elemento diventa

"Grigi" e "Rossi" viene cancellato ,

Page 6: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

La lunghezza di un array

Il numero di elementi di un array si dice lunghezza dell’array.Ad esempio

var a = new Array("Rossi", "Bianchi", "Neri", "Grigi" );

Ha lunghezza 4.La proprietà length restituisce il numero degli elementi dell'array e si ottiene con la notazione puntata.Nell’esempio

alert(a.length) mostra, nella finestra di alert, 4

Page 7: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Note su length

Il valore di length è dunque superiore di uno del più elevato indice di elemento dell'array.La proprietà length viene aggiornata automaticamente ogni qualvolta si aggiungono nuovi elementi all'array.L'utilizzo più comune della proprietà length è quello di consentire un ciclo attraverso tutti gli elementi dell'array stesso.

Page 8: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Gli array e i cicli

Il vantaggio di usare una struttura di dati numerati con indice intero permette di usare i cicli per memorizzare, elaborare e leggere gli elementi di un array.

Ad esempio, se vogliamo fare scrivere nella pagina tutti i cognomi dell’arrayvar a = new Array("Rossi", "Bianchi", "Neri", "Grigi" );Possiamo scrivere il ciclofor (i=0;i<a.length;i++)

document.write(a[i] + "<br>"); Il ciclo fa andare l’indice i da 0 a 3 (per questo viene usato il <) e prende l’elemento a[i] dell’array e lo scrive nella pagina.

Page 9: Array Struttura numerate di dati. Memorizzare molti dati In informatica cè spesso bisogno di memorizzare ed elaborare un insieme costituito da molti dati

Esempio

Inserire in un array i 10 numeri interi pari da 0 a 18 e farseli scrivere in ordine inverso

var a = new Array(); // definisce l’array vuotofor (i=0;i<10;i++) // carica l’array con i numeri pari

a[i] = 2*i;for (i=a.length-1;i>=0;i--)

document.write(a[i] + "<br>"); // scrive gli elementi dell’array

// in ordine inverso