Professional Documents
Culture Documents
Ushtrime Te Pazgjidhura Ne Algoritmike
Ushtrime Te Pazgjidhura Ne Algoritmike
2. Percaktoni dhe implementoni nje klase Vektor qe mban te dhena te tipit integer. Ndertoni metodat :
a. Konstruktorin qe ka si parameter madhesine e vektorit
b. Destruktorin
c. setMadhesia – qe fshin vektorin e vjeter dhe krijon nje vektror te ri
d. getMadhesia – qe kthen madhesine e vektorit
e. lexo – qe lexon vektorin nga perdoruesi
f. printo – printon vektorin
g. mesatare – llogarit mesataren e vektorit
h. minimum – gjen vleren minimale te vektorit
i. inverto – inverton vektorin
j. rendit – rendit vektorin ne rend rrites
Zgjidhje
Vektor.h
class Vektor
{
public:
Vektor(int madhesia);
~Vektor();
int Getmadhesia();
void Setmadhesia(int val);
void lexo ();
void printo ();
int minimum ();
int mesatare();
void inverto();
void rendit();
private:
int madhesia;
int *v;
};
Vektor.cpp
#include <iostream>
#include "Vektor.h"
1
Algoritmikë dhe Programim i Avancuar Seminar 3
using namespace std;
Vektor::Vektor(int madhesia)
{
this->madhesia = madhesia;
v = new int[madhesia];
}
int Vektor::Getmadhesia()
{
return madhesia;
}
void Vektor::lexo ()
{
for (int i = 0; i < madhesia; i++) {
cin >> v[i];
}
}
void Vektor::printo()
{
for (int i = 0; i < madhesia; i++) {
cout << "V [" << i <<"]: " << v[i] << endl;
}
}
2
Algoritmikë dhe Programim i Avancuar Seminar 3
return min;
}
float shuma;
float mesatare;
for (int i=0; i<madhesia; i++) {
shuma+=v[i];
}
mesatare = shuma/madhesia;
return mesatare;
}
main.cpp
#include <iostream>
#include "Vektor.h"
using namespace std;
int main()
{
3
Algoritmikë dhe Programim i Avancuar Seminar 3
int permasa;
cout <<"Jepni numrin e elementeve te vektorit: ";
cin>>permasa;
Vektor v1(permasa);
v1.inverto();
v1.rendit();
return 0;
}
Zgjidhje
Autor.h
#include <string>
using namespace std;
class Autor
{
public:
private:
string emri;
string email;
char gjinia;
};
Autor.cpp
#include "Autor.h"
#include <iostream>
using namespace std;
Autor::Autor(const string &e, string &em, char gjinia )
:emri(e)
{
if(valido(em))
setEmail(em);
else{
cout<<"Email eshte gabim";
exit(1);
}
setGjinia(gjinia);
}
string Autor::getEmail()const
{
return email;
}
void Autor::printo()
{
cout<<emri<<" ("<<gjinia<<") "<<email<<endl;
main.cpp
include <iostream>
#include <string>
#include "Libri.h"
int main()
{
const string e="Ismail Kadare";
string em="email@yahoo.com";
Autor a(e,em,'m');
a.printo();
Autor b(e1,em1,'m');
6
Algoritmikë dhe Programim i Avancuar Seminar 3
if(a==b)
cout<<"Autoret jane te njejte"<<endl;
return 0;
}
4. Krijoni nje klase Libri. Supozojme se nje liber eshte shkruar nga vetem nje autor. Klasa Libri
permban:
a. Kater te dhena private emri(const string), autor (nje instance e klases autor qe krijuam ne
ushtrimin e pare), cmimi (double), sasiaStok (int me vlere defaul 0). Cmimi dhe sasia ne stok
duhet te jene vlera pozitive ose 0.
b. Konstruktorin me dhe pa parametra.
c. Funksionet get (per te gjitha fushat) dhe funksionet set vetem per te dhenat jo const.
d. Nje funksion qe kontrollon cmimin dhe nese futet nje vlere negative e ve ate ne vleren 0.
e. Nje funksion qe kontrollon sasine ne stok dhe nese futet nje vlere negative e ve ate ne vleren 0.
f. Nje funksion qe printon te dhenat e librit.
Krijoni programin per testimin e klases qe krijuat.
Zgjidhje
Libri.h
#include "Autor.h"
class Libri
{
public:
Libri(const string &,const Autor &,double, int=0);
string getTitull() const;
Autor getAutor() const;
double getCmimi() const;
int getSasia()const;
void setCmimi(double);
void setStok(int);
void checkCmimi();
void checkStok();
void printo();
private:
const string titulli;
const Autor autor;
double cmimi;
int sasiaStok;
};
Libri.cpp
#include<iostream>
#include "Libri.h"
7
Algoritmikë dhe Programim i Avancuar Seminar 3
int Libri::getSasia()const
{
return sasiaStok;
}
void Libri::checkCmimi()
{
if(cmimi<0)
cmimi=0;
}
void Libri::checkStok()
{
if(sasiaStok<0)
8
Algoritmikë dhe Programim i Avancuar Seminar 3
sasiaStok=0;
void Libri::printo(){
cout<<"Titulli: "<<titulli<<"\n Autori: "<<autor.getEmri()<<" \n Cmimi: "<<cmimi<<"\n Stok:
"<<sasiaStok<<endl;
}
main.cpp
#include <iostream>
#include <string>
#include "Libri.h"
int main()
{
const string e="Ismail Kadare";
string em="email@yahoo.com";
Autor a(e,em,'m');
Libri l(titulli,a,cmimi,sasia);
Autor a1=l.getAutor();
cout<<a1.getEmail();
return 0;
}