Vektoret
Vektoret jane vendndodhje te njepasnjeshme ne memorje qe kane te njejtin emer dhe te njejtin tip.
- Vektoret do te perdoren per te ruajtur nje sasi te madhe te dhenash te te njejtit tip ne nje emer te vetem pa qene i nevojshem deklarimi i shume variablave.
- Madhesia e tyre nuk ndryshon gjate gjithe programit.
- Perdoren per te ruajtur stringje dhe te dhena me komplekse si objekte te nje strukture e klase.
Ne mund t'i referohemi nje elementi te caktuar ne vektor duke shkruajtur emrin e vektorit dhe pozicionin ku ndodhet elementi i deshiruar midis kllapave[].
Pozicioni i nje elementi ne vektor ose indeksi i tij mund te jete nje numer i plote, variabel ose shprehje.
P.sh. v[2] // elementi me indeks 2 ne vektor (elementi i trete)
int a = 3;
v[a] // elementi me indeks 3 ne vektor (i katert)
v[a*a] // elementi me indeks 9 ne vektor (i dhjete)
Elementete vektorit fillojne nga indeksi 0.
Deklarimi i nje vektori:
int v[5];
// eshte deklaruar nje vektor me 5 numra te plote
Ne kete moment vlerat e ketij vektori jane te cfaredoshme te caktuara nga kompilatori.
Per ti dhene nje vektori vlerat qe deshirojme ka disa menyra:
- mund t'i marrim elementet me rradhe:
v[0] = 1;
v[1] = 2;
v[2] = 3;
v[3] = 4;
v[4] = 5;
2. Nese vlerat e vektorit kane lidhje me njera tjetren sipas ndonje formule te caktuar ato mund te caktohen duke perdorur strukturen for:
for (int i = 0 ; i < 5 ; i++)
v[i] = i+1; // vlerat e vektorit do te jene 1,2,3,4,5
3. Nese vlerat e vektorit jane te ndryshme nga njera tjetra menyra me e shkurter eshte inicializimi i vektorit:
int v[5] = {5,-9,8,5,-1};
int v[] = {5,-9,8,5,-1};
- Nese ne inicializim japim me pak vlera se madhesia e vektorit atehere te tjerat caktohen automatikisht 0.
- Nese ne inicializim japim me shume vlera se madhesia e vektorit atehere do te kemi gabim sintakse.
Shembuj te perdorimit te vektoreve:
// Mbushja e vektorit me vlera 0
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i, n[ 10 ];
for ( i = 0; i < 10; i++ ) // mbushet vektori me 0
n[ i ] = 0;
cout << "Elementi" << setw( 13 ) << "Vlera" << endl;
for ( i = 0; i < 10; i++ ) // printohet vektori
cout << setw( 7 ) << i << setw( 13 )
<< n[ i ] << endl;
system("pause");
return 0;
}
// Shembull 2
// Initializimi i vektoreve ne deklarim
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int n[11]={ 32,21, 12,27, 64, 18, 95, 14, 90, 70, 60 };
cout << "Elementi" << setw( 13 )
<< "Vlera" << endl;
for ( int i = 0; i < 11; i++ )
cout << setw( 7 ) << i << setw( 13 )
<< n[ i ] << endl;
system("pause");
return 0;
}
// Shembull 3
// Mbushja e vektorit me numra cift
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
const int arraySize = 10;
int j, s[ arraySize ];
cout << "Element" << setw( 13 )
<< "Value" << endl;
for ( j = 0; j < arraySize; j++ ) // vendosen vlerat
{ s[ j ] = 2 + 2 * j;
cout << setw( 7 ) << j
<< setw( 13 ) << s[ j ] << endl;
}
system("pause");
return 0;
}
Deklarimi i vektorit mund te behet edhe duke perdorur nje konstante si madhesi te tij. Eshte me e pershtatshme te perdoret emri i konstantes sa here behet bredhja e vektorit sesa nje numer sepse:
1) mbahet mend me lehte
2) mund te ndryshoje madhesia e vektorit ne nje moment te caktuar, psh mund te shtohen ose hiqen elemente. Per kete mjafton te ndryshohet vetem 2 rreshtat ku jane deklaruar vektori dhe konstantja.
Psh:
const int a = 6;
int b[a];
Nje konstante duhet patjeter te inicializohet dhe vlera e saj nuk mund te ndryshohet me gjate programit.
Shembull i perdorimit te konstanteve:
// Perdorimi i konstanteve
#include <iostream>
using namespace std;
int main()
{
const int x = 7; // inicializimi i konstantes x
cout << "Vlera e variablit konstant x eshte: "
<< x << endl;
//x = 8; //nuk lejohet
system("pause");
return 0;
}
// Shembull demostrimi i konstanteve
// nje objekt konstant duhet inicializuar
int main()
{
const int x; // Gabim duhet te inicializohet
x = 7; // Gabim nuk mund te ndryshohet vlera e nje konstanteje
return 0;
}
Shembull i perdorimit te konstanteve si madhesi e vektorit.
// Shuma e elementeve te nje vektori
#include <iostream>
using namespace std;
int main()
{
const int arraySize = 12;
int a[ arraySize ] = { 1, 3, 5, 4, 7, 2, 99,
16, 45, 67, 89, 45 };
int total = 0;
for ( int i = 0; i < arraySize ; i++ )
total = total+a[i];
cout << "Shuma e elementeve te vektorit eshte "
<< total << endl;
system ("pause");
return 0;
}