Лабораторная работа: Знакомство с объектно-ориентированным программированием
Описание
Задание: написать программу для расчёта геометрических характеристик (минимум 3 характеристики) объёмного тела. В классе необходимо использовать несколько конструкторов (с клавиатуры, по умолчанию, через параметры).
Описание класса:
Класс Box представляет собой параллелепипед. Он включает в себя свойства, такие как длина, ширина и высота, а также методы для вычисления различных характеристик.
Поля класса:
double lh, wh, ht (длина, ширина и высота)
Конструкторы класса:
- Box() (конструктор по умолчанию)
Список инициализации — это список значений, которые передаются членам класса при их создании. Он используется в конструкторе и позволяет инициализировать члены класса до выполнения тела конструктора.
Константные члены класса должны быть инициализированы при их создании, так как их значение не может быть изменено после инициализации. Список инициализации позволяет инициализировать константные члены класса. Если бы мы попытались инициализировать константу в теле конструктора, это привело бы к ошибке компиляции, так как константы должны быть инициализированы при создании объекта.
- Box(double l, double w, double h)
Конструктор с параметрами, который инициализирует длину, ширину и высоту заданными значениями. Если одно из значений не положительно, выводится сообщение об ошибке, и используются значения по умолчанию (1.0).
- Box(bool fromUserInput)
Конструктор, который позволяет пользователю вводить значения длины, ширины и высоты с клавиатуры. Если одно из значений не положительно, выводится сообщение об ошибке, и используются значения по умолчанию (1.0).
Методы класса:
- double getVolume() (метод для вычисления объёма)
- double getPloshad() (метод для вычисления площади поверхности)
- double getDiagonal() (метод для вычисления диагонали)
- void display() (метод для вывода информации)
Функция main
В функции main создаются три объекта класса Box с использованием различных конструкторов:
• defaultBox — создается с помощью конструктора по умолчанию.
• paramBox — создается с заданными параметрами.
• userBox — создается с помощью конструктора, который запрашивает ввод от пользователя.
Затем для каждого объекта выводятся объем, площадь поверхности и диагональ на экран.