Advertisement
amber91

lab1 PO osoba

Dec 25th, 2014
209
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.49 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5. class Data
  6. {
  7. private:
  8.     int day,month,year;
  9.  
  10. public:
  11.     Data(int d=0,int mon=0,int y=1991):day(d),month(mon),year(y){}
  12.     int getDay() { return day; };
  13.     int getMonth() { return month; };
  14.     int getYear() { return year; };
  15.     void get(int&,int&,int&);
  16.     void set(int,int,int);
  17.     void wyswietl();
  18. };
  19.  
  20.  
  21. class DaneOsobowe
  22. {
  23. private:
  24.     Data z1;
  25.     string name;
  26.     string surname;
  27.     int age;
  28. public:
  29.     DaneOsobowe(string nm="abc",string sur="abc",int a=99,Data urodz=Data()):name(nm),surname(sur),age(a),z1(urodz){}
  30.     int getage() { return age; };
  31.     string getname() { return name; };
  32.     string getsurname() { return surname; };
  33.     Data getData(){return z1;};
  34.     void get(string &,string &,int &,Data& );
  35.     void set(string,string,int,Data);
  36.     void wyswietl();
  37. };
  38.  
  39.  
  40. ===================================================================================================================================
  41. #include "Osoba.h"
  42.  
  43.  
  44. void Data::get(int&a,int&b,int&c)
  45. {
  46.     a=getDay();
  47.     b=getMonth();
  48.     c=getYear();
  49. }
  50.  
  51. void DaneOsobowe::get(string &n,string &s,int &a,Data &pk)
  52. {
  53.     n=getname();
  54.     s=getsurname();
  55.     a=getage();
  56.     pk=getData();
  57.    
  58. }
  59.  
  60. void Data::set(int a,int b,int c)
  61. {
  62.     day=a;
  63.     month=b;
  64.     year=c;
  65. }
  66.  
  67. void DaneOsobowe::set(string n,string s,int a,Data z)
  68. {
  69.     name=n;
  70.     surname=s;
  71.     age=a;
  72.     z1=z;
  73. }
  74.  
  75. void Data::wyswietl()
  76. {
  77.     cout<<getDay()<<endl;
  78.     cout<<getMonth()<<endl;
  79.     cout<<getYear()<<endl;
  80. }
  81.  
  82.  
  83.  
  84. void DaneOsobowe::wyswietl()
  85. {
  86.     cout<<"Imie :"<<getname()<<endl;
  87.     cout<<"Nazwisko :"<<getsurname()<<endl;
  88.     cout<<"Wiek :"<<getage()<<endl;
  89.     cout<<"Rok "<<z1.getDay()<<endl;
  90.     cout<<"Miesiac "<<z1.getMonth()<<endl;
  91.     cout<<"Dzien "<<z1.getYear()<<endl;
  92. }
  93.  
  94. ===============================================================================================================================
  95. #include "Osoba.h"
  96. ostream & operator<<(ostream & NAPIS, DaneOsobowe X)        
  97. {
  98.         string n,s;
  99.         int a;
  100.         int d,m,y;
  101.         Data z;
  102.  
  103.         X.get(n,s,a,z);
  104.         z.get(d,m,y);
  105.        
  106.  
  107.     NAPIS <<    "IMIE:    " <<  n   <<endl;
  108.     NAPIS <<    "NAZWISKO:" <<  s   <<endl;
  109.     NAPIS <<    "WIEK:    " <<  a   <<endl;
  110.     NAPIS<<     "DZIEN:   " <<  d   <<endl;
  111.     NAPIS <<    "MIESIAC: " <<  m   <<endl;
  112.     NAPIS<<     "ROK:     " <<  y   <<endl;
  113.  
  114.  
  115.  
  116.     return NAPIS;                        
  117. }
  118.  
  119.  
  120.  
  121. int main()
  122. {
  123.  
  124.     DaneOsobowe Z1("adam","malysz",21,Data(2,2,2));
  125.     Z1.wyswietl();
  126.     cout<<Z1;  
  127.     Z1.set("mark","aureliusz",3,Data(1,2,3));
  128.     cout<<Z1;
  129.    
  130.    
  131.  
  132.  
  133.     system("pause");
  134.     return 0;
  135.  
  136. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement