Perdorimi i vektoreve per ruajtjen e rezultateve te votimit.
Disa studente do te votojne per ushqimin ne mense.
Vektori votat ruan votat e 40 studenteve per ushqimin.
Votat jane numra nga 1 ne 10 (1- shume i keq, 10 – shume i mire).
Qellimi i ketij programi eshte te gjeje frekuencen e seciles vote, pra sa here eshte votuar numri 1, sa here numri 2, etj.
Vektori frek do te ruaje frekuencen e votave, pra numrin e votave 1, 2, ... 10.
Gjithsej ky vektor ka 11 elemente. Elementi me indeks 0 per lehtesi nuk do te perdoret.
Ne elementin me indeks 1 vendoset numri i votave 1,...ne elementin me indeks 10 vendoset numri i votave 10.
Per gjetjen e frekuencave perdoret vlera ne vektorin votat si indeks ne vektorin frek. Ne ate indeks rritet vlera me nje. Ky veprim perseritet per cdo el ne vek votat.
for ( int i = 0; i < Size; i++ )
++frek[ votat[i] ];
// Shembull i llogaritjes se frekuences se votave te studenteve per ushqimin
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
const int Size = 40, frekSize = 11;
int votat[ Size ] = { 1, 2, 6, 4, 2, 2, 6, 7, 8,
10, 1, 6, 3, 8, 6, 10, 3, 8, 2, 7, 6, 5, 7,
6, 8, 6, 7,5, 6, 6, 5, 6, 7, 5, 6, 4, 8,
6, 8, 10 };
int frek[ frekSize ] = { 0 };
for ( int i = 0; i < Size; i++ )
++frek[ votat[i] ];
cout << "Votat" << setw( 17 ) << "Frek" << endl;
for ( int j = 1; j < frekSize; j++ )
cout << setw( 6 ) << j
<< setw( 17 ) << frek[ j ]
<< endl;
system ("pause");
return 0;
}
Printon:
Votat Frek
1 2
2 4
3 2
4 2
5 4
6 12
7 5
8 6
9 0
10 3
Press any key to continue . . .
Perdorimi i vektoreve per shfaqjen e te dhenave grafikisht
Ne programin me poshte shfaqen te dhenat e vektorit n grafikisht duke perdorur simbolin
█ me kodin ASCII 219 te afishuar si charper te shfaqur shiritat e grafikut
// Shembull i printimit te histogrames ne varesi te vlerave te vektorit
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
const int arraySize = 10;
int n[ arraySize ] = { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 };
cout << "Elementi" << setw( 13 ) << "Vlera"
<< setw( 17 ) << "Histogram" << endl;
for ( int i = 0; i < arraySize ; i++ ) {
cout << setw( 7 ) << i << setw( 13 )
<< n[ i ] << setw( 9 );
for ( int j = 0; j < n[ i ]; j++ ) // printon nje rresht
cout << (char)(219);
cout << endl;
}
system ("pause");
return 0;
}
Printon:
Elementi Vlera Histogram
0 19 ███████████████████
1 3 ███
2 15 ███████████████
3 7 ███████
4 11 ███████████
5 9 █████████
6 13 █████████████
7 5 █████
8 17 █████████████████
9 1 █
Press any key to continue . . .
// Gjetja e frkuences se faqeve te zarit nese hidhet
//6000 here duke perdorur vektoret
#include <iostream>
#include <iomanip>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
const int arraySize = 7;
int face, frequency[ arraySize ] = { 0 };
srand( time( 0 ) );
for ( int roll = 1; roll <= 6000; roll++ )
++frequency[ 1 + rand() % 6 ]; // zevendeson switch
cout << "Face" << setw( 13 ) << "Frequency"
<< endl;
// injoron elementin 0
for ( face = 1; face < arraySize ; face++ )
cout << setw( 4 ) << face
<< setw( 13 ) << frequency[ face ]
<< endl;
system ("pause");
return 0;
}
Nje nga printimet e programit:
Face Frequency
1 1014
2 974
3 992
4 1028
5 995
6 997
Press any key to continue . . .
Perdorimi i vektoreve per te ruajtur stringje.
Nje string do te konsiderohet si nje vektor me karaktere.
larimi i nje stringu ( vektori me karaktere):
char string[] = "fjala";
ose
char string[] = {'f','j','a','l','a','\0'};
ku karakteri i fundit '\0' eshte karakteri null dhe tregon fundin e çdo stringu.
Pra vektori stringu permban 6 elemente gjithsej.
nese ne deklarojme nje vektor
char string2 [20];
atehere ky vektor mund te mbaje 19 karaktere + karakterin mbylles null.
Leximi i nje stringu nga tastiera do te behet me instruksionin:
cin >> string1;
i cili mund te lexoje karaktere deri ne hapesiren e pare (pra vetem nje fjale) dhe shton automatikisht ne fund '\0'.
#include <iostream>
using namespace std;
int main()
{
char string1[20],string2[]="Si jeni";
cout << "Jepni nje string ";//japim lenda c++
cin >> string1;// lexon lenda
cout << "string1 is: " << string1
<< "\nstring2 is: " << string2
<< "\nstring1 me space eshte:\n";
for ( int i = 0; string1[ i ] != '\0'; i++ )
cout << string1[ i ] << ' ';
cin >> string1; // lexon"c++"
cout << "\nstring1 eshte: " << string1 << endl;
cout << endl;
system ("pause");
return 0;
}
// Perdorimi i Konst tek vektoret
#include <iostream>
using namespace std;
void VektorKonstant( const int [] );
int main()
{
int a[] = { 10, 20, 30 };
VektorKonstant( a );
cout << a[ 0 ] << ' ' << a[ 1 ]
<< ' ' << a[ 2 ] << '\n';
return 0;
system ("pause");
}
void VektorKonstant( const int b[] )
{
b[ 0 ] /= 2; // gabim
b[ 1 ] /= 2; // gabim
b[ 2 ] /= 2; // gabim
}
/* Kompilimi:
C:\Users\Administrator\Documents\xcv.cpp:18:11: error: assignment of read-only location '* b'
b[ 0 ] /= 2; // gabim
^
C:\Users\Administrator\Documents\xcv.cpp:19:11: error: assignment of read-only location '*(b + 4u)'
b[ 1 ] /= 2; // gabim
^
C:\Users\Administrator\Documents\xcv.cpp:20:11: error: assignment of read-only location '*(b + 8u)'
b[ 2 ] /= 2; // gabim
*/