Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string.h>
- #include <cmath>
- using namespace std;
- class Datum
- {
- private:
- int den,mesec,godina;
- public:
- Datum() {}
- ~Datum () {}
- Datum(int den,int mesec,int godina)
- {
- this->den=den;
- this->mesec=mesec;
- this->godina=godina;
- }
- Datum (const Datum &d)
- {
- this->den=d.den;
- this->mesec=d.mesec;
- this->godina=d.godina;
- }
- int getDen() {return den;}
- int getMesec() {return mesec;}
- int getGodina() {return godina;}
- };
- class Vraboten
- {
- private:
- char ime[30];
- int plata;
- Datum DataNaRaganje;
- public:
- Vraboten() {}
- ~Vraboten() {}
- Vraboten(char *ime,int plata, Datum DataNaRaganje)
- {
- strcpy(this->ime,ime);
- this->plata=plata;
- this->DataNaRaganje=DataNaRaganje;
- }
- Vraboten (const Vraboten &v)
- {
- strcpy(this->ime,v.ime);
- this->plata=v.plata;
- this->DataNaRaganje=v.DataNaRaganje;
- }
- //char getIme() {return ime;}
- int getPlata() {return plata;}
- Datum getData() {return DataNaRaganje;}
- void print()
- {
- cout<<"Vraboten: "<<ime;
- cout<<" Plata: "<<plata;
- // cout<<" Data na raganje: "<<DataNaRaganje.getDen()<<"."DataNaRaganje.getMesec()<<"."<<DataNaRaganje.getGodina();
- }
- };
- Vraboten Najplaten(Vraboten *v,int n)
- {
- int max=(v[0].getPlata());
- int maxi=0;
- for(int i=0;i<n;i++)
- {
- if(v[i].getPlata()>max)
- {
- max=v[i].getPlata();
- maxi=i;
- }
- }
- return v[maxi];
- }
- int sredi(Datum d1,Datum d2)
- {
- if(d1.getGodina()>d2.getGodina()) return 1;
- else if(d1.getGodina()<d2.getGodina()) return 2;
- else if(d1.getMesec()>d2.getMesec()) return 1;
- else if(d1.getMesec()<d2.getMesec()) return 2;
- else if(d1.getDen()>d2.getDen()) return 1;
- else if(d1.getDen()<d2.getDen()) return 2;
- else return 0;
- }
- Vraboten Najmlad(Vraboten *v,int n)
- {
- Datum d(v[0].getData());
- int pamti=0;
- for(int i=0;i<n;i++)
- {
- if(sredi(v[i].getData(),d)==1)
- {
- d=v[i].getData();
- pamti=i;
- }
- }
- return v[pamti];
- }
- int main()
- {
- /*Да се напише класа Datum во која ќе се чуваат ден, месец и година (цели броеви).
- Да се напише класа Vraboten во која се чува име на вработениот (не повеќе од 20 знаци),
- плата и датум на раѓање (објект од класата Datum).
- Да се напишат две функции кои како аргументи примаат низа од вработени и големина на низата.
- Едната функција го враќа вработениот со најголема плата, а другата функција го враќа најмладиот вработен во фирмата.
- Во главната програма потребно е да се испечатат на екран податоците за најмалдиот и најплатениот вработен.
- Печатењето на вработениот да биде реализирано со посебна функција print() во рамките на класата Vraboten. */
- Datum d[100];
- Vraboten v[100];
- int n,den,mesec,godina,ime,plata;
- cout<<"kolku vraboteni ke vnesuvate?"<<endl;
- cin>>n;
- for(int i=0;i<n;i++)
- {
- cin>>ime;
- cin>>plata;
- cin>>den;
- cin>>mesec;
- cin>>godina;
- Datum d(den,mesec,godina);
- d[i]=d;
- Vraboten v(ime,plata,d);
- v[i]=v;
- }
- cout<<"Najmladiot vraboten e: ";
- Najmlad(v,n).print();
- cout<<"Vraboten so najgolema plata e: ";
- Najplaten(v,n).print();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement