Advertisement
Guest User

RealEstate

a guest
Apr 26th, 2015
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.14 KB | None | 0 0
  1. //Your code here
  2. #include <iostream>
  3. #include <cstring>
  4. using namespace std;
  5.  
  6. class RealEstate{
  7. protected:
  8. char *address;
  9. int area;
  10. int priceSM;
  11.    
  12.     public:
  13.    
  14.     RealEstate(const char *a = " ",int ar = 0,int cena = 0)
  15.     {
  16.      address = new char[strlen(a)+1];
  17.      strcpy(address,a);
  18.      area = ar;
  19.      priceSM = cena;
  20.      
  21.     }
  22.    
  23.     RealEstate(const RealEstate& e)
  24.     {
  25.       address = new char[strlen(e.address)+1];
  26.       strcpy(address,e.address);
  27.       area = e.area;
  28.       priceSM = e.priceSM;
  29.     }
  30.    
  31.    
  32.     ~RealEstate()
  33.     {
  34.       delete [] address;
  35.     }
  36.    
  37.    
  38.     friend istream& operator>>(istream& is,RealEstate& r)
  39.     {
  40.       is >> r.address >> r.area >> r. priceSM;
  41.         return is;
  42.    
  43.     }
  44.    
  45.    
  46.    
  47.     int price()
  48.     {
  49.       return area*priceSM;
  50.     }
  51.    
  52.     void print()
  53.     {
  54.      cout<< address <<", Kvadratura: "<< area <<", Cena po Kvadrat: "<< priceSM << endl;
  55.    
  56.     }
  57.    
  58.     float estateTax()
  59.     {  int p = price()*5;
  60.        float x = 100.0;
  61.       return p/x;
  62.     }
  63.    
  64.     char *getAddress()
  65.     {
  66.      return address;
  67.     }
  68.    
  69.    
  70.  };
  71.    
  72.  
  73. class Villa:public RealEstate{
  74.     int luxury;
  75.    
  76.     public:
  77.    
  78.     Villa(const char *a = " ",int ar = 0,int cena = 0,int l =0):RealEstate(a,ar,cena)
  79.     {
  80.      luxury = l;
  81.     }
  82.    
  83.     Villa(Villa& v){}//ne mi treba za zadacava
  84.    
  85.    
  86.     friend istream& operator>>(istream& ist,Villa& m)
  87.     {
  88.       ist >> m.address >> m.area >> m. priceSM >> m.luxury;
  89.         return ist;
  90.    
  91.     }
  92.    
  93.    
  94.    void print()
  95.     {
  96.      cout<< address <<", Kvadratura: "<< area <<", Cena po Kvadrat: "<< priceSM << ", Danok na luksuz: " << luxury << endl;
  97.    
  98.     }
  99.    
  100.     int estateTax()
  101.     {
  102.       return (price()*5)/100 + (price()*luxury)/100;
  103.     }
  104.  
  105. };
  106.    
  107.    
  108.  
  109. int main(){
  110.     RealEstate re;
  111.     Villa v;
  112.     cin >> re;
  113.     cin >> v;
  114.     re.print();
  115.     cout << "Danok za: " << re.getAddress() << ", e: " << re.estateTax() << endl;
  116.     v.print();
  117.     cout << "Danok za: " << v.getAddress() << ", e: " << v.estateTax() << endl;
  118.     return 0;
  119. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement