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

*/