Accesarea valorilor dintr-un tablou

Valorile dintr-un tablou pot fi accesate asemănător cu oricare variabilă din tipul de bază. În acest caz, sintaxa este: identificator_tablou[index]; Să considerăm pentru exemplu, declararea: int a[5]={1, 2, 3, 4, 5}; Conform celor spuse mai sus, a[0]=1, a[1]=2 şamd. Operaţiile permise asupra elementelor tabloului sunt cele specifice tipului de bază, pe care acesta este definit.

O precizare importantă trebuie făcută legat de accesarea unui index care depăşeşte dimensiunea vectorului. Acest lucru este permis în C++, nefiind semnalată eroare de compilare, dar valoarea prezentă la acel index poate cauza probleme.

O altă observaţie necesară trebuie făcută în privinţa folosirii parantezelor drepte. Astfel, în sintaxa: int a[10], acestea sunt utilizate pentru a preciza dimensiunea tabloului, la declarare. În sintaxa: a[5]=20; parantezele sunt folosite pentru a preciza indicele unui element, în vederea accesării acestuia.

Pentru o mai bună înţelegere a tablourilor, să analizăm exemplul următor.

using namespace std; int a[20]; int n, suma=0; int main { cout<<”Introduceti numarul de elemente ale vectorului : ”; cin>>n; for ( i=0 ; i>a[i]; suma=suma+a[i]; } cout<<suma; return 0; } Observăm că a fost utilizat tabloul a, declarat de tip int, cu 20 de elemente. Ulterior, a fost citită o valoare pentru variabila n şi, apoi, primele n valori ale vectorului. Desigur, ar fi o idee bună să verificăm valoarea lui n, pentru ca aceasta să nu depăşească 20, dimensiunea maximă a tabloului. După citire, fiecare valoare este adăugată la variabila suma, care, deci, va avea, la final, valoarea sumei elementelor vectorului. Putem afirma că utilizarea, în acest caz, a unui vector este inutilă, dat fiind că valorile nu vor fi utilizate ulterior citirii sale.
 * 1) include

Acest lucru ar fi, însă, necesar dacă ar trebui, spre exemplu să sortăm valorile sale. În cele ce urmează vom prezenta un program care implementează metoda de sortarea Bubble Sort.

using namespace std; int a[20]; int inversiuni=1, n, i; int main { cout<<”Introduceti numarul de elemente ale vectorului : ”; cin>>n; for ( i=0 ; i>a[i]; while(inversiuni==1) { inversiuni=0; for(i=0;ia[i+1]) {  aux=a[i]; a[i]=a[i+1]; a[i+1]=aux; inversiuni=1; } } for(i=0;i<n;i++) cout<<a[i]<<’ ’<<; return 0; }
 * 1) include