Mitko_jos

moe_delo:)

Apr 17th, 2013
367
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.94 KB | None | 0 0
  1. #include<istream>
  2. #include<cstring>
  3. #define PI 3.14
  4. using namespace std;
  5.  
  6. class Forma
  7. {
  8.   private:
  9.   char HEX_triplet[7];
  10.   int poz_x;
  11.   int poz_y;
  12.   public:
  13.   Forma(char *_HEX_triplet,int _poz_x,int _poz_y)
  14.   {
  15.       strcpy(HEX_triplet,_HEX_triplet);
  16.       poz_x=_poz_x;
  17.       poz_y=_poz_y;
  18.   }
  19.   char *getHEX_triplet(){return HEX_triplet;}
  20.   int getPoz_X(){return poz_x;}
  21.   int getPoz_Y(){return poz_y;}
  22.  
  23.  
  24. ~Forma()
  25. {
  26.     delete[] HEX_triplet;
  27. }
  28. virtual float ploshtina()=0;
  29. bool operator<(Forma &u1)
  30. {
  31.     return ploshtina()<u1.ploshtina();
  32.  
  33.  
  34. }
  35.  
  36.  
  37. };
  38. ostream &operator<<(ostream& out,Forma &p)
  39. {
  40.     out<<p.getHEX_triplet()<<endl;
  41.     out<<p.getPoz_X()<<endl;
  42.     out<<p.getPoz_Y()<<endl;
  43.     return out;
  44. }
  45.  
  46.  
  47.  
  48. class Elipsa:public Forma
  49. {
  50.     private:
  51.     int glavna_oska_a;
  52.     int sporedna_oska_b;
  53.     public:
  54.     Elipsa(char *_HEX_triplet,int _poz_x,int _poz_y,int _glavna_oska_a,int _sporedna_oska_b):Forma(_HEX_triplet,_poz_x,_poz_y)
  55.     {
  56.         glavna_oska_a=_glavna_oska_a;
  57.         sporedna_oska_b=_sporedna_oska_b;
  58.     }
  59.     int getGlavna_Oska_a(){return glavna_oska_a;}
  60.     int getSporedna_Oska_b(){return sporedna_oska_b;}
  61.  
  62.   float plostina()
  63.   {
  64.       return PI*getGlavna_Oska_a()*getSporedna_Oska_b();
  65.   }
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74. };
  75.  
  76. class Kvadrat:public Forma
  77. {
  78.     private:
  79.     int dolzina_strana_a;
  80.     public:
  81.     Kvadrat(char *_HEX_triplet,int _poz_x,int _poz_y,int _dolzina_strana_a):Forma(_HEX_triplet,_poz_x,_poz_y)
  82.     {
  83.         dolzina_strana_a=_dolzina_strana_a;
  84.     }
  85.  int getDolzina_strana_a(){return dolzina_strana_a;}
  86.  
  87.   float plostina()
  88. {
  89.     return getDolzina_strana_a()*getDolzina_strana_a();
  90. }
  91.  
  92.  
  93.  
  94.  
  95. };
  96.  
  97. void top3(Forma **niza, int n) {
  98. for (int i=0; i<n; i++) {
  99. for (int j=0; j<n-1; j++) {
  100.  
  101. if(*niza[j]<*niza[j+1]) {
  102. Forma* temp=niza[j];
  103. niza[j]=niza[j+1];
  104. niza[j+1]=temp;
  105. }
  106. }
  107. }
  108. for(int i=0; i<3; i++) {cout<<*niza[i];}
  109. }
  110.  
  111.  
  112.  
  113.  
  114.  
  115. int main()
  116. {
  117.     return 0;
  118. }
Advertisement
Add Comment
Please, Sign In to add comment