Advertisement
Guest User

Fabrika+Dinamicko

a guest
Mar 26th, 2019
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.30 KB | None | 0 0
  1. #include <iostream>
  2. #include <string.h>
  3. using namespace std;
  4. class Rabotnik{
  5. private:
  6.     char *ime;
  7.     char prezime[30];
  8.     int plata;
  9.     int *broevi;
  10. public:
  11.     Rabotnik(){
  12.         ime=new char[1];
  13.     strcpy(ime,"");
  14.     strcpy(prezime,"");
  15.     plata=0;
  16.     }
  17.     Rabotnik(char *ime1,char *prezime1, int plata1,int *broevi1){
  18.       ime=new char[strlen(ime1)+1];
  19.     strcpy(ime,ime1);
  20.     strcpy(prezime,prezime1);
  21.     plata=plata1;
  22.  
  23.     }
  24.     Rabotnik(const Rabotnik &r){
  25.      strcpy(ime,r.ime);
  26.      strcpy(prezime,r.prezime);
  27.      plata=r.plata;
  28.     }
  29.  
  30.     int getPlata(){
  31.     return plata;
  32.     }
  33.     void setIme(char *ime1){
  34.     ime=new char[strlen(ime1)+1];
  35.     strcpy(ime,ime1);
  36.     }
  37.     char *getIme(){
  38.     return ime;
  39.     }
  40.  
  41.     void pecati(){
  42.     cout<<ime<<" "<<prezime<<" "<<plata<<endl;
  43.     }
  44.  
  45. };
  46. class Fabrika{
  47. private:
  48.     Rabotnik *rabotnici;
  49.     int brojVraboteni;
  50. public:
  51.     Fabrika(){
  52.     brojVraboteni=0;
  53.     }
  54.     Fabrika(Rabotnik rabotnici1[100],int brojVraboteni1){
  55.       brojVraboteni=brojVraboteni1;
  56.       rabotnici=new Rabotnik[brojVraboteni];
  57.     for(int i=0;i<brojVraboteni;i++){
  58.         rabotnici[i]=rabotnici1[i];
  59.     }
  60.     }
  61.  
  62.     void pecatiVraboteni(){
  63.     for (int i=0;i<brojVraboteni;i++){
  64.         rabotnici[i].pecati();
  65.     }
  66.     }
  67.     void pecatiSoPlata(int plata){
  68.     for (int i=0;i<brojVraboteni;i++){
  69.             if(rabotnici[i].getPlata()>=plata){
  70.                 rabotnici[i].pecati();
  71.             }
  72.     }
  73.     }
  74.  
  75.     void pecatiSoMaxPlata(){
  76.         int maxPlata=0;
  77.         int cuvajIndeks;
  78.     for (int i=0;i<brojVraboteni;i++){
  79.             if(rabotnici[i].getPlata()>maxPlata){
  80.                maxPlata=rabotnici[i].getPlata();
  81.                cuvajIndeks=i;
  82.             }
  83.     }
  84.     rabotnici[cuvajIndeks].pecati();
  85.  
  86.     }
  87. };
  88. int main()
  89. {
  90.     int n;
  91.     cin>>n;
  92.     Rabotnik rabotnici[n];
  93.     for(int i=0;i<n;i++){
  94.         char ime[30];
  95.         char prezime[30];
  96.         int plata;
  97.         cin>>ime>>prezime>>plata;
  98.         rabotnici[i]=Rabotnik(ime,prezime,plata);
  99.     }
  100.     Fabrika fabrika1(rabotnici,n);
  101.     fabrika1.pecatiVraboteni();
  102.     int plata;
  103.     cin>>plata;
  104.     fabrika1.pecatiSoPlata(plata);
  105.     cout<<"Vraboten so max plata e "<<endl;
  106.     fabrika1.pecatiSoMaxPlata();
  107.  
  108.     return 0;
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement