MeehoweCK

Untitled

Mar 25th, 2021
559
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.43 KB | None | 0 0
  1. // main.cpp
  2. #include "Oswietlenie.h"
  3. #include "Pokoj.h"
  4.  
  5. int main()
  6. {
  7.     Oswietlenie lampka1;
  8.     Oswietlenie lampka2;
  9.     Oswietlenie lampka3;
  10.     lampka1.wypisz_stan();
  11.     lampka2.wypisz_stan();
  12.     lampka3.wypisz_stan();
  13.     lampka1.wlacz();
  14.     lampka1.wypisz_stan();
  15.     lampka2.wlacz();
  16.     lampka2.wypisz_stan();
  17.     Pokoj nowy_pokoj(lampka1, lampka2, lampka3);
  18.     nowy_pokoj.pokaz_stan();
  19.     nowy_pokoj.wylacz_wszystkie();
  20.     nowy_pokoj.pokaz_stan();
  21.     lampka1.wypisz_stan();
  22.     return 0;
  23. }
  24.  
  25. // head.h
  26. #ifndef HEAD_H_INCLUDED
  27. #define HEAD_H_INCLUDED
  28.  
  29. class Pokoj;
  30. class Oswietlenie;
  31.  
  32. #endif // HEAD_H_INCLUDED
  33.  
  34. // Pokoj.h
  35. #ifndef POKOJ_H
  36. #define POKOJ_H
  37. #include "Oswietlenie.h"
  38.  
  39. class Pokoj
  40. {
  41.     friend class Oswietlenie;
  42.     Oswietlenie lampki[3];
  43. public:
  44.     Pokoj(Oswietlenie, Oswietlenie, Oswietlenie);
  45.     void wlacz_wszystkie();
  46.     void wylacz_wszystkie();
  47.     void pokaz_stan();
  48. };
  49.  
  50. #endif // POKOJ_H
  51.  
  52. // Pokoj.cpp
  53. #include "Pokoj.h"
  54. #include <iostream>
  55.  
  56. using namespace std;
  57.  
  58. Pokoj::Pokoj(Oswietlenie l1, Oswietlenie l2, Oswietlenie l3)
  59. {
  60.     lampki[0] = l1;
  61.     lampki[1] = l2;
  62.     lampki[2] = l3;
  63. }
  64.  
  65. void Pokoj::wlacz_wszystkie()
  66. {
  67.     for(int i = 0; i < 3; ++i)
  68.         lampki[0].wlacz();
  69. }
  70.  
  71. void Pokoj::wylacz_wszystkie()
  72. {
  73.     for(int i = 0; i < 3; ++i)
  74.         lampki[i].wylacz();
  75. }
  76.  
  77. void Pokoj::pokaz_stan()
  78. {
  79.     if(lampki[0].stan == true && lampki[1].stan == true && lampki[2].stan == true)
  80.     {
  81.         cout << "Wszystkie swiatla w pokoju sa wlaczone\n";
  82.         return;
  83.     }
  84.     if(lampki[0].stan == false && lampki[1].stan == false && lampki[2].stan == false)
  85.     {
  86.         cout << "Wszystkie swiatla w pokoju sa wylaczone\n";
  87.         return;
  88.     }
  89.     cout << "W pokoju wlaczone sa swiatla nr ";
  90.     for(int i = 0; i < 3; ++i)
  91.         if(lampki[i].stan == true)
  92.             cout << i + 1 << ", ";
  93. }
  94.  
  95. // Oswietlenie.h
  96. #ifndef OSWIETLENIE_H
  97. #define OSWIETLENIE_H
  98. #include "../head.h"
  99.  
  100. class Oswietlenie
  101. {
  102.     friend class Pokoj;
  103.     bool stan;
  104. public:
  105.     Oswietlenie() : stan(false) {}
  106.     void wlacz() {stan = true;}
  107.     void wylacz() {stan = false;}
  108.     void wypisz_stan();
  109. };
  110.  
  111. #endif // OSWIETLENIE_H
  112.  
  113. // Oswietlenie.cpp
  114. #include "Oswietlenie.h"
  115. #include <iostream>
  116.  
  117. using namespace std;
  118.  
  119. void Oswietlenie::wypisz_stan()
  120. {
  121.     if(stan)
  122.         cout << "Lampka wlaczona\n";
  123.     else
  124.         cout << "Lampka wylaczona\n";
  125. }
Advertisement
Add Comment
Please, Sign In to add comment