Логотип Автор24реферат
Задать вопрос
%
уникальность
не проверялась
Контрольная работа на тему:

В работе требуется сконструировать класс с заданным набором свойств

уникальность
не проверялась
Аа
8699 символов
Категория
Программирование
Контрольная работа
В работе требуется сконструировать класс с заданным набором свойств .pdf

Зарегистрируйся в 2 клика в Кампус и получи неограниченный доступ к материалам с подпиской Кампус+ 🔥

Условие

В работе требуется сконструировать класс с заданным набором свойств. Набор свойств следует взять в соответствии со своим вариантом задания. В класс также должны быть добавлены методы для просмотра и изменения значений любого из свойств объекта. Требования к конструированию класса: доступ к свойствам — закрытый, к методам — открытый. В классе следует предусмотреть конструктор по умолчанию, конструктор с параметрами. Действия, выполняемые программой: 1. создание объекта с помощью конструктора по умолчанию, 2. создание объекта с помощью конструктора с параметрами, 3. создание массива объектов (размерность массива 3 или 4 элемента), 4. инициализация свойств каждого объекта массива(исходные данные вводятся с клавиатуры), 5. просмотр свойств каждого объекта, 6. вычисление заданного параметра для массива объектов в соответствии с вариантом задания (выполнить с помощью глобальной функции). 26 вариант Название кинотеатра, Адрес, Количество мест, Средняя цена билетов. Определить кинотеатр с самым большим возможным доходом.

Нужно полное решение этой работы?

Решение

Потяни, чтобы посмотреть
Файл MovieTheatre.h
#ifndef MOVIE_THEATRE_H
#define MOVIE_THEATRE_H
#include <string>
/*
26 вариант
Название кинотеатра, Адрес, Количество мест, Средняя цена билетов
Определить кинотеатр с самым большим возможным доходом
*/
class MovieTheatre {
public: // открытая часть класса
MovieTheatre(); // конструктор по умолчанию
MovieTheatre(std::string, std::string, int, double); // конструктор с параметрами
~MovieTheatre() { }; // деструктор

// методы просмотра значений
std::string getName();
std::string getAddress();
int getPlaces();
double getPrice();

// методы изменения значений
void setName(std::string);
void setAddress(std::string);
void setPlaces(int);
void setPrice(double);

// для выполнения задания - метод вычисления возможного дохода
double sum();

private: // закрытая часть класса
std::string name; // Название кинотеатра
std::string address; // Адрес
int places; // Количество мест
double price; // Средняя цена билетов
};
#endif /* MOVIE_THEATRE_H */
Файл MovieTheatre.cpp
#include "MovieTheatre.h"
// конструктор по умолчанию
MovieTheatre::MovieTheatre() {
// устанавливаем заранее опреленный набор свойств
name = "Noname";
address = "Noaddress";
places = 0;
price = 0;
}
// конструктор с параметрами
MovieTheatre::MovieTheatre(std::string name, std::string address, int places, double price) {
// устанавливаем переданные в качестве параметров свойства
this->name = name;
this->address = address;
this->places = places;
this->price = price;
}
// методы просмотра значений
std::string MovieTheatre::getName() {
return name;
}
std::string MovieTheatre::getAddress() {
return address;
}
int MovieTheatre::getPlaces() {
return places;
}
double MovieTheatre::getPrice() {
return price;
}
// методы изменения значений
void MovieTheatre::setName(std::string name) {
this->name = name;
}
void MovieTheatre::setAddress(std::string address) {
this->address = address;
}
void MovieTheatre::setPlaces(int places) {
this->places = places;
}
void MovieTheatre::setPrice(double price) {
this->price = price;
}
// для выполнения задания - метод вычисления возможного дохода
double MovieTheatre::sum() {
return places * price;
}
Файл main.cpp
#include <iostream>
#include <string>
#include "MovieTheatre.h"
using namespace std;
// вычисление заданного параметра с помощью глобальной функции
// кинотеатр с самым большим возможным доходом
// возвращает индекс кинотеатра в массиве
int maxSum(MovieTheatre *array, int n) {
int ind = 0; // индекс кинотеатра с самым большим возможным доходом
for (int i = 1; i < n; i++) {
// если доход текущего кинотеатра больше, меняем индекс
if (array[i].sum() > array[ind].sum()) {
ind = i;
}
}
return ind;
}
// вывод свойств объекта (выделяем в функцию, чтобы не повторять код)
void printTheatre(MovieTheatre mt) {
cout << "Название: " << mt.getName() << endl;
cout << "Адрес: " << mt.getAddress() << endl;
cout << "Количество мест: " << mt.getPlaces() << endl;
cout << "Средняя цена билетов: " << mt.getPrice() << endl;
}
int main() {
setlocale(LC_ALL, "Russian");

// 1 . создание объекта с помощью конструктора по умолчанию
MovieTheatre mt;
cout << "Создание объекта с помощью конструктора по умолчанию:" << endl;
printTheatre(mt);

// 2. создание объекта с помощью конструктора с параметрами
MovieTheatre mtparam("Весна", "ул. Пушкина, 3", 400, 250);
cout << "Создание объекта с помощью конструктора с параметрами:" << endl;
printTheatre(mtparam);

// 3
50% задачи недоступно для прочтения
Переходи в Кампус, регистрируйся и получай полное решение
Получить задачу
Больше контрольных работ по программированию:
Все Контрольные работы по программированию
Найди решение своей задачи среди 1 000 000 ответов
Крупнейшая русскоязычная библиотека студенческих решенных задач