Advertisement
Guest User

Untitled

a guest
Dec 2nd, 2019
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.71 KB | None | 0 0
  1. #include<iostream>
  2. using namespace std;
  3. /**Utwórz klasê osoba posiadaj¹c¹ dwa wewnêtrzne pola
  4. imie typu string oraz nazwisko typu string
  5. dodaj metody dostêpu do pól wewnêtrznych klasy (set i get)
  6. zdefiniuj konstruktor bezargumentowy, oraz konstruktor dwuargumentowy
  7. inicjuj¹cy obiekt imieniem i nazwiskiem. Zdefiniuj metodê print()
  8. która wyœwietla imiê i nazwisko osoby*/
  9. class osoba {
  10. public:
  11. osoba(){}
  12. osoba(string i, string n){imie=i; nazwisko=n;}
  13. void setImie(string i){imie=i;}
  14. string getImie(){return imie;}
  15. void setNazwisko(string n){nazwisko=n;}
  16. string getNazwisko(){return nazwisko;}
  17. void print(){cout << imie << " " << nazwisko << endl;}
  18. osoba operator + (osoba &v) {
  19. return osoba(this->imie,v.nazwisko);
  20. }
  21. protected:
  22. string imie, nazwisko;
  23. };
  24. /** zdefiniuj operator + w wyniku którego powstaje nowa osoba
  25. o imieniu pierwszej osoby i nazwisku drugiej osoby*/
  26. /**Utwórz klasê potomn¹ (dziedzicz¹c¹ z klasy osoba) o nazwie
  27. uczen która posiada dodatkowo pole sredniaOcen typu double,
  28. dodaj metody dostêpu do pola sredniaOcen, zdefiniuj konstruktor
  29. bezargumentowy, konstruktor trzyargumentowy inicjuj¹cy imiê, nazwisko
  30. i œredni¹ ocen.Zdefiniuj metodê print() która wyœwietla imiê,
  31. nazwisko i sredni¹ ocen*/
  32. class uczen : public osoba{
  33. public:
  34. uczen(){}
  35. uczen(string i, string n, double s) {
  36. imie=i; nazwisko=n; sredniaOcen=s;
  37. }
  38. void setSredniaOcen(double s){sredniaOcen=s;}
  39. double getSredniaOcen(){return sredniaOcen;}
  40. print(){cout << imie << " " << nazwisko << " " << sredniaOcen << endl;}
  41. private:
  42. double sredniaOcen;
  43. };
  44. /**Utwórz klasê potomn¹ (dziedzicz¹c¹ z klasy osoba) o nazwie
  45. pracownik która posiada dodatkowo pole stawka typu double,
  46. dodaj metody dostêpu do pola stawka, zdefiniuj konstruktor
  47. bezargumentowy, konstruktor trzyargumentowy inicjuj¹cy imiê, nazwisko
  48. i stawkê. Zdefiniuj metodê print() która wyœwietla imiê,
  49. nazwisko i stawkê*/
  50. int main(){
  51. /**Utwórz dwie osoby Jan Kowalski i Agata Lewandowska
  52. wyœwietl dane ka¿dej z tych osób. Zmieñ nazwisko Agaty Lewandowskiej
  53. na Lewandowska-Kowalska. Wyœwietl dane ka¿dej z tych osób. Utwórz osobę
  54. trzecią jako o3=o1+o2*/
  55. osoba o1("Jan", "Kowalski");
  56. osoba o2("Agata", "Lewandowska");
  57. o1.print();
  58. o2.print();
  59. o2.setNazwisko("Lewandowska-Kowalska");
  60. o1.print();
  61. o2.print();
  62. osoba o3=o1+o2;
  63. o3.print();
  64. /**Utwórz ucznia Piotra Kowalskiego o średniej 4.56. Wyświetl dane ucznia
  65. za pomoca metody print(). Zminiejsz mu średnią na 4.50.
  66. Utwórz pracownika Andrzej Sumienny o stawce 43.50 Wyświetl dane pracownika
  67. */
  68. uczen u1("Piotr", "Kowalski", 4.56);
  69. u1.print();
  70. u1.setSredniaOcen(4.50);
  71. u1.print();
  72. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement