sandra0309

ucenici

Jun 11th, 2015
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.07 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3.  
  4. using namespace std;
  5. class Ucenik
  6. {
  7. private:
  8.     char *ime;
  9.     float prosek;
  10.     int godina;
  11. public:
  12.     Ucenik(char *ime=NULL,float prosek=0.0,int godina=0)
  13.     {
  14.         ime=new char[strlen(ime)+1];
  15.         strcpy(this->ime,ime);
  16.         this->prosek=prosek;
  17.         this->godina=godina;
  18.     }
  19.     Ucenik( Ucenik &u)
  20.     {
  21.         ime=new char[strlen(u.ime)+1];
  22.         strcpy(this->ime,u.ime);
  23.         this->godina=u.godina;
  24.     }
  25.     Ucenik &operator ++ () const
  26.     {
  27.         godina ++;
  28.         return *this;
  29.     }
  30.     friend ostream &operator << (ostream &out, Ucenik &u)
  31.     {
  32.         out<<"Ime:"<<u.ime<<endl;
  33.         out<<"Prosek:"<<u.prosek<<endl;
  34.         out<<"Godina:"<<u.godina<<endl;
  35.         return out;
  36.     }
  37.     bool operator > (Ucenik &u1,Ucenik &u2)
  38.     {
  39.         if(u1.prosek>u2.prosek)
  40.             return true;
  41.         else
  42.             return false;
  43.     }
  44.    
  45.     float getProsek ()
  46.     {
  47.         return prosek;
  48.     }
  49.    
  50.    
  51. };
  52. class Paralelka
  53. {
  54. private:
  55.     Ucenik *ucenici;
  56.     int n;
  57. public:
  58.     Paralelka(Ucenik *ucenici=NULL,int n=0)
  59.     {    this->n=n;
  60.         ucenici=new Ucenik[n];
  61.         for(int i=0;i<n;i++)
  62.         {
  63.             this->ucenici[i]=ucenici[i];
  64.         }
  65.     }
  66.     Paralelka( Paralelka &p)
  67.     {
  68.         this->n=p.n;
  69.         ucenici=new Ucenik[n];
  70.         for(int i=0;i<n;i++)
  71.         {
  72.             this->ucenici[i]=p.ucenici;
  73.         }
  74.        
  75.     }
  76.     Paralelka &operator = (Paralelka &p)
  77.     {
  78.        this->n=p.n;
  79.         ucenici=new Ucenik[n];
  80.         for(int i=0;i<n;i++)
  81.         {
  82.             this->ucenici[i]=p.ucenici;
  83.         }
  84.         return *this;  
  85.     }
  86.     Paralelka &operator+=(Ucenik &u)
  87.     {
  88.         Ucenik *tmp=new Ucenik[n];
  89.         for(int i=0;i<n;i++)
  90.         {
  91.             tmp[i]=ucenici[i];
  92.         }
  93.         delete [] ucenici;
  94.         n++;
  95.         ucenici=new Ucenik[n+1];
  96.         for(int i=0;i<n;i++)
  97.         {
  98.             ucenici[i]=tmp[i];
  99.         }
  100.         delete [] tmp;
  101.         ucenici[n]=u;
  102.     }
  103.     Paralelka &operator ++ () const
  104.     {
  105.         for(int i=0;i<n;i++)
  106.         {
  107.             ucenici[i]++;
  108.         }
  109.         return *this;
  110.     }
  111.    
  112.    
  113.     friend ostream &operator <<(ostream &out, Paralelka &p)
  114.     {
  115.         for(int i=0;i<n;i++)
  116.         {
  117.             out<<p.ucenici[i]<<endl;
  118.         }
  119.     }
  120.    
  121.     void nagrada ()
  122.     {   for(int i=0;i<n;i++)
  123.          {
  124.            if(ucenici[i].getProsek()==10.0)
  125.         {
  126.             cout<<ucenici[i].getProsek()<<endl;
  127.         }  
  128.          }
  129.        
  130.     }
  131.     void najvisokProsek()
  132.     {
  133.         int maxi=0;// nz dali ednoto ili ova int maxi=ucenici[0].getProsek();
  134.         int index=0;
  135.         for(int i=0;i<n;i++)
  136.         {
  137.             if(ucenici[i].getProsek()>maxi)
  138.             {
  139.                 maxi=ucenici[i].getProsek();
  140.                 index=i;
  141.             }
  142.         }
  143.         cout<<ucenici[index].getProsek()<<endl;
  144.     }
  145.  
  146.    
  147. };
  148. int main()
  149. {
  150.     cout << "Hello world!" << endl;
  151.     return 0;
  152. }
Advertisement
Add Comment
Please, Sign In to add comment