35657

Untitled

Nov 2nd, 2023
1,317
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.02 KB | None | 0 0
  1.  
  2. //Лилия а зачем здесь названия комнат???
  3. //Это математическая задачка, здесь нужны только параметы комнат, а также размеры и цена обоев.
  4.  
  5.  
  6.  
  7.  
  8. #include <iostream>
  9. #include <iomanip>
  10. #include <conio.h>
  11.  
  12. using namespace std;
  13.  
  14.  
  15. class Room {
  16. public:
  17.  
  18.     Room() : room_length_(0), room_width_(0), room_height_(0), ceiling_(0) {};
  19.  
  20.  
  21.     void SetRoom(double lenght, double width, double height, bool ceiling) {
  22.         room_length_ = lenght;
  23.         room_width_ = width;
  24.         room_height_ = height;
  25.         ceiling_ = ceiling;
  26.     }
  27.  
  28.     double room_length_; //длинна
  29.     double room_width_; // ширина
  30.     double room_height_; // высота
  31.     bool ceiling_; // здесь подойдет bool (0 - не оклеивать, 1 - оклеивать)
  32. };
  33.  
  34.  
  35. class Wallpaper {
  36. public:
  37.     Wallpaper() : wallpaper_name_(""), wallpaper_length_(0), wallpaper_width_(0), price_roll_(0) {};
  38.     Wallpaper(const char* name, const double wallpaper_length, const double wallpaper_width, double price_roll) : wallpaper_name_(name), wallpaper_length_(wallpaper_length), wallpaper_width_(wallpaper_width), price_roll_(price_roll) {};
  39.  
  40.     const char* wallpaper_name_; // название обоев
  41.     double wallpaper_length_; //длинна обоев в рулоне
  42.     double wallpaper_width_; //ширина обоев в рулоне
  43.     double price_roll_; // стоимость рулона обоев
  44.  
  45.  
  46.  
  47. };
  48.  
  49. class Flat {
  50. public:
  51.  
  52.     Flat(const int new_rooms_count) : rooms_count_(new_rooms_count), rooms_(new Room[new_rooms_count]) {}; // параметризованный конструктор, параметр - количество комнат в квартире
  53.  
  54.  
  55.     int rooms_count_;// количество комнат в квартире
  56.     Room* rooms_; // массив комнат (массив комнат а не названий комнат!!!)
  57.    
  58.  
  59.  
  60.  
  61.     ~Flat() {
  62.         delete[]  rooms_;
  63.     }
  64.  
  65. };
  66.  
  67.  
  68.  
  69.  
  70. int main() {
  71.     setlocale(LC_ALL, "Russian");
  72.  
  73.     // здесь запрашиваем количество комнат, создаем Flat под заданное количество комнат, потом циклом запрашиваем параметры комнат и записываем эти параметры в каждую комнату с помощью SetRoom
  74.  
  75.     // потом запрашиваем параметры обоев (можно сделать только с одним видом обоев, рассчитать все под него)
  76.  
  77.     // ну и можно например посчитать площадь всех стен в комнатах квартиры, площадь одного рулона обоев, и исходя из этого количество обоев и их общую стоимость (необходимые для расчета методы можете добавить сами
  78.  
  79.  
  80.  
  81. }
Advertisement
Add Comment
Please, Sign In to add comment