160 likes | 488 Views
7. VEKTORËT. Vektorët. Fushat – bashkësi e variablave të tipit të njëjtë të të dhënave Vektorë – fusha një-dimensionale Matrica – fusha dy-dimensionale Fusha shumëdimensionale. Deklarimi i vektorëve. tipi emriVektori [ N ];.
E N D
Vektorët Fushat – bashkësi e variablave të tipit të njëjtë të të dhënave • Vektorë –fusha një-dimensionale • Matrica – fusha dy-dimensionale • Fusha shumëdimensionale Deklarimi i vektorëve tipi emriVektori[N]; N – numri i elementeve të vektorit (madhësia e vektorit) int a[5]; float b[10]; double c[15]; N – duhet të ketë vlerë konstante const int n=10; float a[n]; int n=10; float a[n]; ?
Elemente të vektorit Elementi i parë: a[0] Elementi i dytë: a[1] Elementi i tretë: a[2] … Elementi i fundit: a[N-1] Variabla e vektorit (a)– përmban referencë në elementin e parë të vektorit int a[5]; Indeksa të elementeve të vektorit Indeksi i elementit të parë: 0 Indeksi i elementit të dytë: 1 Indeksi i elementit të tretë: 2 … Indeksi i elementit të fundit: (N–1)
Deklarimi dhe inicializimi i vektorëve tipiVektor[N]={vlera0, vlera1, vlera2, … ,vlera(N-1)}; int a[5] = {1, 2, 3, 4, 5}; double b[3] = {2.3, 2.8, 4.5}; float c[4] = {2.56, 3.21, 8.55, 4.56} tipiVektor[]={vlera0, vlera1, vlera2, … ,vlera(N-1)}; int a[] = {1, 2, 3, 4, 5}; Deklarimi dhe inicializimi parcial i vektorëve int a[5] = {1, 2, 3}; double b[3] = {2.3, 2.8}; float c[4] = {2.56} int a[5] = {1, 2, 3, 0, 0}; double b[3] = {2.3, 2.8, 0}; float c[4] = {2.56, 0, 0, 0}
1. Të formohet vektori a ashtuqë secili element të jetë i barabartë me katrorin e indeksit të tij. int main() { const int n=5; int a[n]; for(int i=0; i<n; i++) { a[i]=i*i; cout << "a[" << i << "]=" << a[i] << endl; } return 0; }
2. Të formohet vektori a me pesë numrat e parë tek dhe vektori b me pesë numrat e parë çift. int main() { int a[5], b[5]; for(int i=0; i<5; i++) { a[i]=2*i+1; b[i]=2*i+2; cout << "a[" << i << "]=" << a[i] << "\t\t" << "b[" << i << "]=" << b[i] << endl; } return 0; }
3. Të formohet vektori a me lexim të n numrave nga tastiera. Zgjidhje 1 int main() { int n, a[10], i, S; cout << "n: "; cin >> n; if(n<=10) { S=0; for(i=0; i<n; i++) { cout << "a[" << i << "]: "; cin >> a[i]; S=S+a[i]; } cout << "\nS=" << S << endl; } else cout << "Gabim! n:[1,10]" << endl; return 0; }
Zgjidhje 2 int main() { int n, a[10], i, S; cout << "n: "; cin >> n; if(n<=10) { cout << "Numrat: "; S=0; for(i=0; i<n; i++) { cin >> a[i]; S=S+a[i]; } cout << "\nS=" << S << endl; } else cout << "Gabim! n:[1,10]" << endl; return 0; }
4. Të shtypet elementi më i vogël i vektorit a dhe indeksi i tij. int main() { int a[10], min, minI; a[0]=8; a[1]=-1; a[2]=1; a[3]=8; a[4]=-9; a[5]=5; a[6]=4; a[7]=-5; a[8]=2; a[9]=3; min=a[0]; for(int i=1; i<10; i++) { cout << "a[" << i << "]=" << a[i] << endl; if(a[i]<min) { min=a[i]; minI=i; } } cout << "\nMin=" << min << "\nIndeksi=" << minI << endl; return 0; }
5. Të shtypet elementi më i madh i vektorit a dhe indeksi i tij. int main() { int max, maxI; int a[10]={8,-1,1,9,-9,5,4,-5,2,3}; max=a[0]; cout << "a[]={"; for(int i=0; i<10; i++) { cout << a[i] << " "; if(a[i]>max) { max=a[i]; maxI=i; } } cout << "} \n\n" << "Max=" << max << "\nIndeksi=" << maxI << endl; return 0; }
6. Të llogaritet prodhimi i elementeve të vektorit a (fq.197). int main() { const int n=6; int i, P, a[n]={3,2,6,5,8,4}; P=1; for(i=0;i<n; i++) P=P*a[i]; cout << "Prodhimi=" << P << endl; return 0; }
7. Të formohet vektor i ri b nga elementet me indeks tek të vektorit a duke i rritur elementet për vlerën e indeksit përkatës (fq.198). int main() { int i, j, a[10]={5,-2,9,7,3,-8,4,12,10,6}, b[5]; cout << "a[]={"; for(i=0; i<10; i++) cout << a[i] << " "; cout << "} \n\n"; cout << " i a[i] j b[j] \n"; for(i=1, j=-1; i<10; i=i+2) { j++; b[j]=a[i]+i; cout << setw(5) << i << setw(6) << a[i] << setw(6) << j << setw(7) << b[j] << endl; } cout << "\nb[]={"; for(i=0; i<j+1; i++) cout << b[i] << " "; cout << "} \n\n"; return 0; }
8. Të llogaritet shuma e katrorëve të elementeve negativë dhe kubeve të elementeve pozitiv të vektorit a. (fq.200) int main() { int i, S, a[6]={5,-3,4,9,-5,8}; cout << "a[]={"; for(i=0; i<6; i++) cout << a[i] << " "; cout << "} \n\n"; for(i=0, S=0; i<6; i++) if(a[i]<0) S+=a[i]*a[i]; else S+=a[i]*a[i]*a[i]; cout << "Shuma=" << S << endl; return 0; }
9. Të caktohet vlera absolute më e vogël e elementeve të vektorit a dhe indeksi i saj. (fq.201) int main() { const int n=8; int i, indeksi, x, k, a[n]={5,-8,6,4,-2,6,9,3}; cout << "a[]={"; for(i=0; i<n; i++) cout << a[i] << " "; cout << "} \n\n"; for(i=0, x=abs(a[1]), k=1; i<n; i++) if(abs(a[i])<x) { x=abs(a[i]); k=i; } cout << "x=" << x << endl << "k=" << k << endl; return 0; }
10. Të radhiten me zmadhim vlerat e elementet te vektorit a. int main() { const int n=5; int i, j, t, a[n]={15,9,8,7,5}; cout << "a[]={"; for(i=0; i<n; i++) cout << a[i] << " "; cout << "} \n\n"; for(i=0; i<n-1; i++) for(j=i+1; j<n; j++) if(a[i]>a[j]){ t=a[i]; a[i]=a[j]; a[j]=t; } cout << "Pas radhitjes inkrementuese \n\n" << "a[]={"; for(i=0; i<n; i++) cout << a[i] << " "; cout << "} \n\n"; return 0; }
i=0j=1,2,3,4 m=5 for(i=0; i<5-1; i++) for(j=i+1; j<5; j++) i=1j=2,3,4 i=2j=3,4 i=3j=4