Înapoi la curs

Curs de pregătire a examenului de bacalaureat la informatică

  1. Informații administrative
    Prezentarea instructorului
  2. Despre conținutul cursului
  3. Status teme
  4. Cursuri
    1. Abordarea examenului de bacalaureat la informatică
    5 Subiecte
    |
    1 Evaluare
  5. 2. Tipuri de date simple, operații în limbajul C / C++ și logică matematică
    7 Subiecte
    |
    1 Evaluare
  6. 3. Anatomia unui program; pseudocod
    7 Subiecte
    |
    1 Evaluare
  7. 4. Algoritmi elementari
    4 Subiecte
    |
    1 Evaluare
  8. 5. Vectori, vectori de frecvență, vectori predefiniți
    9 Subiecte
  9. 6. Matrici, bordarea matricilor, vectori de direcție
    8 Subiecte
    |
    1 Evaluare
  10. 7. Aplicații vectori și matrici
    5 Subiecte
    |
    1 Evaluare
  11. 8. Structuri și subprograme
    4 Subiecte
    |
    1 Evaluare
  12. 9. Recursivitate, divide et impera și backtracking
    5 Subiecte
    |
    1 Evaluare
  13. 10. Aplicații
    3 Subiecte
  14. 11. Caractere și lucrul cu șiruri de caractere
    5 Subiecte
    |
    1 Evaluare
  15. 12. Tipuri de date abstracte și liste
    6 Subiecte
    |
    1 Evaluare
  16. 13. Recapitulare și evaluare
    1 Subiect
  17. 14. Grafuri neorientate
    5 Subiecte
  18. 15. Exerciții și probleme cu grafuri
    2 Subiecte
  19. 16. Grafuri orientate și arbori
    6 Subiecte
    |
    1 Evaluare
  20. 17. Implementarea unui algoritm de tip backtracking (suplimentar)
    5 Subiecte
  21. 18. Recapitulare și evaluare (2)
    4 Subiecte
  22. 19. Recapitulare și evaluare (3)
    2 Subiecte
    |
    1 Evaluare
  23. 20. Recapitulare și evaluare (4)
    4 Subiecte
Parcursul lecției
0% Finalizat

Definiție: vectorul este o colecție de valori de același tip (întreg, caracter, sau alte tipuri), valori ce pot fi accesate după un indice, sau poziție, care se mai cheamă și indicele în vector al acelei valori. Toate acestea sunt posibile datorită faptului că vectorul ocupă un spațiu de memorie compact, adică pozițiile din acesta, (casuțele de valori) sunt pe poziții consecutive în memorie. Spre exemplu, nu este valabil acest fapt în cazul listelor înlănțuite, după cum vom vedea în lecțiile următoare.

Exemplu de vector cu n elemente

În acest exemplu avem un vector v care conține n valori de tip întreg. Cele n valori pot fi accesate folosind indicele lor, sau poziția lor, de la 0 la n-1 , înscrisă în desen sub fiecare din căsuțe. Elementul de pe poziția 2 este accesat ca v[2] .

Această imagine are atributul alt gol; numele fișierului este Vector-1.gif

Așa cum la matematică scriem

v = v0, v1, v2, ..., vn-2, vn-1

în limbajul C scriem

v[0], v[1], v[2], ..., v[n-2], v[n-1]

În cazul nostru v[0] are valoarea 9, v[1] are valoarea 5, v[2] are valoarea 12, și așa mai departe.

Numerotarea pozițiilor

Observație importantăpozițiile, sau indicii elementelor încep de la zero, nu de la unu. Astfel, dacă avem un vector de 10 elemente, ele vor fi numerotate de la 0 la 9. Elementul v[10] nu există, deorece ar fi al 11-lea element.

De ce se întâmplă acest lucru? Nu ar fi mai natural ca primul element să fie elementul unu, și nu elementul zero?

Răspunsul este nu. Gândiți-vă că deși parterul este primul etaj nu îi spunem etajul unu, ci parter. El este totuna cu etajul zero. Etajul unu este următorul. De ce facem așa? Pentru că așa ne-am obișnuit.

Americanii consideră parterul ca etajul unu, spre deosebire de noi. Deci nu există o regulă clară. Când avem o secvență de elemente le putem numerota fie ca “al câtelea element este“, caz în care primul element va fi unu, fie ca “distanța lui față de începutul secvenței“, caz în care primul element este zero.

Pentru aprofundare sau lămuriri vă lasăm mai jos un link către un video (în limba română) în care este explicat acest topic:

În cazul vectorilor există avantaje în a numerota elementele de la zero. Ele vor deveni evidente în următoarele lecții, este vorba despre parcurgerea circulara a vectorilor și alte relații matematice.

O variabilă de tip vector stochează mai multe valori. De aceea tipul vector se mai numește și tip compus de date, prin opoziție cu tipurile simple de date pe care le-am învățat până acum, respectiv întreg și caracter, care stochează o singură valoare.

Pentru o înțelegere mai bună asupra vectorilor, puteți urmări clipul următor (în limba engleză). Voi vă puteți opri la finalul discuției despre tablourile unidimensionale.

Răspunsuri