Advertisement
Guest User

Untitled

a guest
Jan 26th, 2020
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.09 KB | None | 0 0
  1.  
  2. #include <iostream>
  3. #include <string>
  4. #include <cstdlib>
  5.  
  6. using namespace std;
  7.  
  8.  
  9. //2, 2, 3
  10.  
  11. /* Zgodnie z zasadami programowania obiektowego napisz program, który zawierał będzie:
  12. - Klasę DaneDostawy z prywatnymi polami na nazwę dostawcy, cenę, liczbę dni oraz konstruktorem ustawiającym te pola.
  13. Klasa niech zawiera publiczną metodę zwrocDane() - zwracającą dane w formacie np.: "Kurier Fedex, 16 zł. 3-4 dni robocze".
  14. - Klasę DaneProducenta z prywatnymi polami na nazwę producenta, kraj pochodzenia oraz konstruktorem ustawiającym te pola.
  15. Klasa niech zawiera publiczną metodę wypiszDane() - wypisującą dane w formacie np.: "Adidas, Niemcy".
  16. - Klasę DaneProduktu z prywatnymi polami na dane dostawcy(klasa DaneDostawy), dane producenta(klasa DaneProducenta),
  17. nazwa produktu, cena, liczba sztuk, rozmiar oraz konstruktorem ustawiającym te pola.
  18. Klasa niech zawiera publiczną metodę wypiszDane() - wypisującą dane wykorzystując metody wypiszDane
  19. z klas DaneDostawy, DaneProducenta w formacie np.:
  20. "Produkt: CAMO - Bluza z polaru,
  21. Rozmiar M,
  22. Cena: 220 zł,
  23. Dostępność: 5 sztuk,
  24. Producent: Adidas, Niemcy,
  25. Dostawa: Kurier Fedex, 16 zł. 3-4 dni robocze".
  26.  
  27. - Utwórz kilka obiektów klasy DaneProduktu uzupełniając wszystkie pola oraz wyświetl dane na konsoli.*/
  28.  
  29.  
  30. class DaneDostawy {
  31. private:
  32. string nazwaDostawcy;
  33. float cena;
  34. int liczbaDni;
  35. public:
  36. DaneDostawy();
  37. DaneDostawy(string nazwa, float cena, int dni) {
  38. this->nazwaDostawcy = nazwa;
  39. this->cena = cena;
  40. this->liczbaDni = dni;
  41.  
  42. }
  43. public:
  44. void zwrocDane() {
  45. cout << nazwaDostawcy << ", " << cena << ", " << liczbaDni << "-" << liczbaDni + 1 << " dni robocze\n";
  46. };
  47.  
  48. };
  49.  
  50. class DaneProducenta {
  51. private:
  52. string nazwaProducenta;
  53. string krajPochodzenia;
  54. public:
  55. DaneProducenta();
  56. DaneProducenta(string nazwa1, string kraj) {
  57. this->nazwaProducenta = nazwa1;
  58. this->krajPochodzenia = kraj;
  59. }
  60. public:
  61. void zwrocDane() {
  62. cout << nazwaProducenta << ", " << krajPochodzenia;
  63. };
  64.  
  65. };
  66.  
  67. class DaneProduktu {
  68. private:
  69. DaneDostawy danedostawcy;
  70. DaneProducenta daneproducenta;
  71. string nazwap;
  72. float cena;
  73. int liczbaSztuk;
  74. float rozmiar;
  75. public:
  76. DaneProduktu();
  77. DaneProduktu(DaneDostawy danedostawcy, DaneProducenta daneproducenta, string nazwap, float cena1, int liczba, float rozm) {
  78. this->nazwap = nazwap;
  79. this->cena = cena1;
  80. this->liczbaSztuk = liczba;
  81. this->rozmiar = rozm;
  82. this->danedostawcy = danedostawcy;
  83. this->daneproducenta = daneproducenta;
  84. }
  85.  
  86. void WypiszDane() {
  87.  
  88. cout << "Produkt: " << nazwap << "\nRozmiar: " << rozmiar;
  89. cout << "\nCena: " << cena;
  90. cout << "\nDostępność: " << liczbaSztuk;
  91. daneproducenta.DaneProducenta::zwrocDane;
  92. danedostawcy.DaneDostawy::zwrocDane;
  93. }
  94. };
  95.  
  96. int main()
  97. {
  98.  
  99. DaneDostawy *obiekt1 = new DaneDostawy("ABC", 120, 5);
  100. obiekt1->zwrocDane();
  101.  
  102. DaneProducenta* obiekt2 = new DaneProducenta("trit","Polska");
  103. obiekt2->zwrocDane();
  104.  
  105. DaneProduktu* obiekt3 = new DaneProduktu(obiekt1, obiekt2,"Cos",140,4,12);
  106. obiekt3->WypiszDane();
  107.  
  108.  
  109. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement