Crazy

Ракомет

May 17th, 2017
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.06 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3. using namespace std;
  4.  
  5. class TimRakomet{
  6.     protected:
  7.     char ime[30];
  8.     float prosek;
  9.    
  10.     public:
  11.     TimRakomet(char *i, float p)
  12.     {
  13.        
  14.         strcpy(ime,i);
  15.         prosek=p;
  16.    
  17.    
  18.     }
  19.    
  20.     char *getIme(){return ime;}
  21.    
  22.     virtual float dostignuvanje(){return 0;}
  23.  
  24. };
  25.  
  26. class Klub: public TimRakomet{
  27.     private:
  28.     int tituli;
  29.    
  30.     public:
  31.     Klub(char *i, float p, int t):TimRakomet(i,p)
  32.     {
  33.     tituli=t;
  34.    
  35.     }
  36.    
  37.     float dostignuvanje(){return (prosek*5)+(tituli*50);}
  38.    
  39.  
  40.  
  41.  
  42. };
  43.  
  44. class Reprezentacija: public TimRakomet{
  45.     private:
  46.     int rank [2];
  47.    
  48.     public:
  49.    
  50.     Reprezentacija(char *i, float p, int r[]):TimRakomet(i,p)
  51.     {
  52.         for(int i=0;i<3;i++)
  53.             rank[i]=r[i];
  54.    
  55.    
  56.     }
  57.    
  58.     float dostignuvanje(){
  59.         int bodovi=0;
  60.         for(int i=0;i<3;i++){
  61.             if(rank[i]==1){
  62.                 bodovi+=60;
  63.             }
  64.             else if(rank[i]==2){
  65.                 bodovi+=40;
  66.             }
  67.             else if(rank[i]==3){
  68.                 bodovi+=20;
  69.             }
  70.         }
  71.         return (prosek*5)+bodovi;
  72.     }
  73.    
  74.    
  75.  
  76.  
  77. };
  78.  
  79. void najdobar(TimRakomet **t, int n){
  80.     TimRakomet *najdobar = t[0];
  81.     for(int i=0;i<n;i++)
  82.         if(t[i]->dostignuvanje()>najdobar->dostignuvanje())
  83.         najdobar=t[i];
  84.        
  85.         cout<<najdobar->getIme()<<endl;
  86.     cout<<najdobar->dostignuvanje();
  87.    
  88.  
  89.  
  90.  
  91. }
  92.  
  93.  
  94.  
  95.  
  96. int main() {
  97.     int n;
  98.     cin >> n;
  99.     TimRakomet** timovi = new TimRakomet*[n];
  100.     for(int i = 0; i < n; ++i) {
  101.         char ime[30];
  102.         float prosekGolovi;
  103.         cin >> ime >> prosekGolovi;
  104.         if(i % 2) {
  105.             int tituli;
  106.             cin >> tituli;
  107.             timovi[i] = new Klub(ime, prosekGolovi, tituli);
  108.         } else {
  109.             int rank[] = {0, 0, 0};
  110.             cin >> rank[0] >> rank[1] >> rank[2];
  111.             timovi[i] = new Reprezentacija(ime, prosekGolovi, rank);
  112.         }
  113.     }
  114.  
  115.     najdobar(timovi, n);
  116.  
  117.     for(int i = 0; i < n; ++i) {
  118.         delete timovi[i];
  119.     }
  120.     delete [] timovi;
  121.     return 0;
  122. }
Advertisement
Add Comment
Please, Sign In to add comment