Problem

4/12

Accesso a un elemento dell'array

Theory Click to read/hide

Riferimento a un elemento dell'array

Gran parte dell'utilità degli array deriva dal fatto che è possibile accedere individualmente ai suoi elementi.
Il modo per farlo è utilizzare un indice per numerare gli elementi.

RICORDA!
LA NUMERAZIONE DEGLI ARRAY IN C PARTE DA ZERO.

(Questo è obbligatorio — devi iniziare da zero. Questo è particolarmente importante da ricordare)

Esempi di accesso all'array A:
x = (LA[3] + 5)*LA[1]; // legge i valori di A[3] e A[1]
A[0] = x + 6; // scrive un nuovo valore in A[0]
Analizziamo il programma per lavorare con gli elementi dell'array.
#include <iostream>
utilizzando lo spazio dei nomi std;
principale()
 {
   int i=1,A[5];
   A[0] = 23; //a ciascuno dei 5 elementi dell'array (indici da 0 a 4)
   A[1] = 12; //scrive un valore specifico
   A[2] = 7;
   LA[3] = 43;
   A[4] = 51;
   LA[2] = LA[i] + 2*LA[i-1] + LA[2*i]; //cambia il valore dell'elemento con indice 2 nel risultato dell'espressione
                                    //perché i=1, quindi sostituendo il valore della variabile i nell'espressione che otteniamo
                                    //prossima espressione A[2] = A[i] + 2*A[0] + A[2];
   cout << LA[2]+LA[4];
}
Come risultato dell'esecuzione di questo programma, sullo schermo comparirà il valore dell'elemento dell'array con indice 2 pari a 116 Come puoi vedere dall'esempio, possiamo accedere a qualsiasi elemento del vettore. E calcolare anche il numero richiesto dell'elemento utilizzando varie formule (ad esempio, come nel programma A[i-1] o A[2*i], in questi casi, gli indici degli elementi verranno calcolati e dipenderanno dal valore di i.)

Osserviamo un programma di esempio
#include<iostream>
utilizzando lo spazio dei nomi std;
principale()
{
 const int N = 5;
  int A[N];
  x = 1;
  cout << LA[x-3]; //riferimento all'elemento A[-2]
  LA[x+4]=LA[x]+LA[2*(x+1)]; //dopo aver sostituito x nelle espressioni e nei calcoli, otteniamo la seguente riga: A[5] = A[1]+A[ 4];
  ...
}

Perché l'array è dichiarato con 5 elementi, il che significa che gli elementi saranno numerati da 0 a 4. Vediamo che il programma accede a elementi inesistenti: A[-2] e A[5]
Si scopre che il programma è andato oltre i limiti dell'array

L'array fuori dai limiti sta accedendo a un elemento con un indice che non esiste nell'array.

In tali casi, i programmi di solito si arrestano in modo anomalo con errore di runtime

Proviamo a lavorare da soli con gli elementi dell'array. Completa l'attività
 

Problem

Nelle righe da 6 a 9, imposta gli elementi dell'array nell'indice da 1 a 4 in modo che siano il doppio del valore dell'elemento dell'array precedente. 
In questa attività non è possibile assegnare numeri specifici, è necessario fare riferimento all'elemento precedente dell'array per nome e indice
Cioè, scrivere A[1]=46 sarà considerato errato