Shembulli 1 Prototipi i funksionit

redakto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
                              // Kapitulli 4 - Programi 1 - PROTIPI1.CPP
#include <iostream>

void BaneDicka(int Shpeze, float Kambe, char Sy);

int main()
{
int Krahe = 2;
float Kambe = 1000.0;
char Shikues = 2;

   BaneDicka(3, 12.0, 4);
   BaneDicka(Krahe, Kambe, Shikues);

   return 0;
}

void BaneDicka(int Shpeze, float Kambe, char Sy)
{
   std::cout << "Jane " << Shpeze << " shpeze," << "\n";
   std::cout << "me " << Kambe << " kambe" << "\n";
   std::cout << "dhe " << (int)Sy << " pare sy" << "\n\n";
}


// Rezulltati pas nxitimit të programit
//
// Jane 3 shpeze,
// me 12 kambe
// dhe 4 pare sy.
//
// Jane 2 Shpeze,
// me 1000 kambe
// dhe 2 pare sy.

Shembulli 2 Prototipi i funksionit, dallimi nga komenti

redakto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
                              // Kapitulli 4 - Programi 2 - PROTIPI2.CPP
#include <iostream>

void BaneDicka(int, float, char);

int main()
{
int Shpeze = 2;
float Kambe = 1000.0;
char Shikues = 65;

   BaneDicka(3, 12.0, 67);
   BaneDicka(Shpeze, Kambe, Shikues);

   return 0;
}

void BaneDicka(int Shpeze,    // Numri i krahëve
              float Kambe,   // Numri i këmbëve
              char Shikues)    // Numri i syve
{
   std::cout << "Jane " << Shpeze << " shpeze," << "\n";
   std::cout << "me " << Kambe << " kambe" << "\n";
   std::cout << "dhe " << Shikues << " pale sy." << "\n\n";
}


// Rezulltati pas nxitimit të programit
//
// Jane 3 shpeze,
// me 12 kambe
// dhe C pale sy.
//
// Jane 2 shpeze,
// me 1000 kambe
// dhe A pale sy.

Shembulli 3 Dorzim-pranimi i referencave

redakto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
                               // Kapitulli - Programi 3 - TRSREF.CPP
#include <iostream>
#include <stdio.h>

void Levize(int Nxit1, int &Nxit2);

int main()
{
int Numruesi = 7, Index = 12;

   std::cout << "Vlerat jane ";
   printf("%3d %3d\n", Numruesi, Index);

   Levize(Numruesi, Index);

   std::cout << "Vlerat jane ";
   printf("%3d %3d\n", Numruesi, Index);

   return 0;
}

void Levize(int Nxit1, int &Nxit2)
{
   Nxit1 = Nxit1 + 100;
   Nxit2 = Nxit2 + 100;
   std::cout << "Vlerat jane ";
   printf("%3d %3d\n", Nxit1, Nxit2);
}


// Rezulltati pas nxitimit të programit
//
// Vlerat jane    7  12
// Vlerat jane  107 112
// Vlerat jane    7 112

Shembulli 4 Parametrat standart

redakto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
                              // Kaptitulli 4 - Programi 4 - PARASTAND.CPP
#include <iostream>
#include <stdio.h>

int Vellimi(int Gjatesia, int Gjeresia = 2, int Lartesia = 3);

int main()
{
int x = 10, y = 12, z = 15;

   std::cout << "Disa regjistra kane vellimin " << Vellimi(x, y, z) << "\n";
   std::cout << "Disa regjistra kane vellimin " << Vellimi(x, y) << "\n";
   std::cout << "Disa regjistra kane vellimin " << Vellimi(x) << "\n";

   std::cout << "Disa regjistra kane vellimin ";
   std::cout << Vellimi(x, 7) << "\n";
   std::cout << "Disa regjistra kane vellimin ";
   std::cout << Vellimi(5, 5, 5) << "\n";

   return 0;
}

int Vellimi(int Gjatesia, int Gjeresia, int Lartesia)
{
   printf("%4d %4d %4d   ", Gjatesia, Gjeresia, Lartesia);
   return Gjatesia * Gjeresia * Lartesia;
}


// Rezulltati pas nxitimit të programit
//
// 10   12   15  Disa regjistra kane vellimin   1800
// 10   12    3  Disa regjistra kane vellimin   360
// 10    2    3  Disa regjistra kane vellimin   60
// Disa regjistra kane vellimin   10    7    3   210
// Disa regjistra kane vellimin    5    5    5   125

Shembulli 5 Parametrat variues

redakto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
                                // Kapitulli 4 - Programi 5 - VARPAR.CPP
#include <iostream>
#include <stdarg.h>

            // Dëftimi i një funksioni që ka kërkonë një parametër
void TregoParametrin(int number, ...);

int main()
{
int Index = 5;
int Nje = 1, Dy = 2;

   TregoParametrin(Nje, Index);
   TregoParametrin(3, Index, Index + Dy, Index + Nje);
   TregoParametrin(Dy, 7, 3);

   return 0;
}

void TregoParametrin(int Numri, ...)
{
va_list PrametrTr;

   va_start(PrametrTr, Numri);              // Ftesa pran makros inicializuese

   std::cout << "Parametrat jane ";
   for (int Index = 0 ; Index < Numri ; Index++)
   {
      std::cout << va_arg(PrametrTr, int) << " "; // Ekstraho një parametër
   }
   std::cout << "\n";
   va_end(PrametrTr);                        // Mbyllë makron
}


// Rezulltati pas nxitimit të programit
//
// Parametrat jane 5
// Parametrat jane 5 7 6
// Parametrat jane 7 3

Shembulli 6 Mbingarkimi i funksionit

redakto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
                              // Kapitulli 4 - Programi 6 - MBINGA.CPP
#include <iostream>

// overload BaneDicka;          // Ndoshta të duhet

int BaneDicka(const int);       // katrori i një numri të plotë
int BaneDicka(float);           // Trefisho një variabël float dhe hudhe jashtë si numër të plotë
float BaneDicka(const float, float); // Llogarite mesataren e variablave float

int main()
{
int Index = 12;
float Gjatesia = 14.33;
float Lartesia = 34.33;

   std::cout << "12 në katrore eshte "  << BaneDicka(Index)          << "\n";
   std::cout << "24 në katrore eshte "  << BaneDicka(2 * Index)      << "\n";
   std::cout << "3 here gjatesia eshte "    << BaneDicka(Gjatesia)         << "\n";
   std::cout << "3 here lartesia eshte "     << BaneDicka(Lartesia)          << "\n";
   std::cout << "Mesatarja eshte "  << BaneDicka(Gjatesia, Lartesia)  << "\n";

   return 0;
}

int BaneDicka(const int NjeVlere)      // Katrorizonë një numër
{
   return NjeVlere * NjeVlere;
}

int BaneDicka(float NjeVlere)    // Trefishonë një variabël float dhe si rezulltat jep një numër të plotë
{
   return (int)(3.0 * NjeVlere);
}

                                      // Llogaritë vleren e dy variablave float 
float BaneDicka(const float Nxit1, float Nxit2)
{
   return (Nxit1 + Nxit2) / 2.0;
}


// Rezulltati pas nxitimit të programit
//
// 12 në katrore eshte 144
// 24 në katrore eshte 576
// 3 here gjatesia eshte 42
// 3 here lartesia eshte 102
// Mesatarja eshte 24.33