Informatică · clasele IX–X
Vectori (tablouri unidimensionale)
„Nu înțeleg indicii, nu știu să parcurg un vector și să găsesc maximul sau să număr elementele cu o proprietate.”
Semne că blocajul vine de aici
- Accesezi v[n] la un vector cu n elemente indexat de la 0.
- Inițializezi maximul cu 0 și greșești când toate elementele sunt negative.
- Nu știi să ștergi sau să inserezi un element.
Noțiunea care lipsește de obicei
Înainte să refaci exerciții de tipul acesta, verifică dacă stăpânești noțiunile de mai jos. De cele mai multe ori, blocajul se rezolvă acolo, nu aici.
Explicația, pe scurt
Un vector este o listă de valori de același tip, așezate la indici consecutivi. În C++ indicii pornesc de la 0: pentru n elemente, indicii valizi sunt 0 … n − 1. Citirea și afișarea se fac cu un for peste indici.
Șabloane de bază: maximul — inițializezi max = v[0], apoi pentru fiecare element, dacă v[i] > max, max = v[i]; numărarea — contor care crește când elementul are proprietatea; suma — acumulator.
Ștergerea elementului de pe poziția p: muți elementele de la p + 1 până la n − 1 cu o poziție la stânga și scazi n. Inserarea pe poziția p: muți elementele de la n − 1 până la p cu o poziție la dreapta (pornind de la capăt!), pui valoarea, crești n.
Exemplu rezolvat
Pentru v = {3, −7, 12, 5}, găsește maximul și numără elementele pare.
- 1max = v[0] = 3. i = 1: −7 > 3? nu. i = 2: 12 > 3? da, max = 12. i = 3: 5 > 12? nu.
- 2Pare: 3 nu, −7 nu, 12 da, 5 nu → contor = 1.
Răspuns: max = 12; 1 element par
Verificare rapidă
Răspunsul rămâne doar în pagina ta; nu este trimis sau salvat.
Un vector v cu 5 elemente este declarat în C++ și indexat de la 0. Care acces este în afara vectorului?
Ce poți învăța în continuare
Noțiunile de mai jos se construiesc pe vectori (tablouri unidimensionale). Dacă verificarea a ieșit bine, poți trece la ele.