Advertisement
Guest User

Untitled

a guest
Feb 17th, 2019
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.34 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. class WARTOSC {
  6.     double w;
  7.    
  8.     public:
  9.         WARTOSC (double a = 0) {w = a;}
  10.    
  11.     double zwroc() { //metoda zwracajaca wartosc
  12.         return w;
  13.     }  
  14.    
  15.     virtual void wypisz()
  16.     {
  17.         cout<<w<<" ";
  18.     }
  19.  
  20.     friend istream & operator >> (istream & wejscie, WARTOSC & obj) {
  21.         wejscie>>obj.w;
  22.         return wejscie;
  23.     }
  24.  
  25.     friend ostream & operator << (ostream & wyjscie, WARTOSC & obj) {
  26.         wyjscie<<obj.w<<endl;
  27.         return wyjscie;
  28.     }
  29.    
  30.     WARTOSC operator+(const WARTOSC & obj) const
  31.     {
  32.         return WARTOSC(w + obj.w);
  33.     }      
  34. };
  35.  
  36. class WAGA : public WARTOSC {
  37.     private:
  38.         string jednostka;
  39.    
  40.     public:
  41.         WAGA(double a, string j):WARTOSC(a) {
  42.             jednostka = j;
  43.         }
  44.    
  45.     void wypisz()
  46.     {
  47.         WARTOSC::wypisz();
  48.         cout<<jednostka<<endl;
  49.     }
  50.    
  51. };
  52.  
  53. class MIARA : public WARTOSC {
  54.     private:
  55.         string jednostka;
  56.    
  57.     public:
  58.         MIARA(double a, string j):WARTOSC(a) {
  59.             jednostka = j;
  60.         }
  61.    
  62.     void wypisz()
  63.     {
  64.         WARTOSC::wypisz();
  65.         cout<<jednostka<<endl;
  66.     }
  67.    
  68. };
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76. int main() {
  77.    
  78.     //zadanie 2
  79.    
  80.     //a
  81.     WAGA c(5, "kg");
  82.     MIARA x(0, "m");
  83.    
  84.     //b
  85.     cout<<c.zwroc()<<endl<<endl;
  86.    
  87.     //c
  88.     cin>>x;
  89.     x.wypisz();
  90.    
  91.     //d
  92.     WARTOSC wynik = c + x;
  93.     cout << wynik.zwroc() << endl;
  94.    
  95.     //zadanie 3
  96.     WARTOSC * wsk;
  97.    
  98.     wsk=&c;
  99.     wsk->wypisz();
  100.    
  101.     wsk=&x;
  102.     wsk->wypisz();
  103.    
  104.    
  105.    
  106.     return 0;
  107. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement