
С++ Разработать классы для описанных ниже объектов. Поля класса должны быть приватными. Включить
в класс методы set(...), get(...). Сделать метод showAll() для вывода полной информации, реализацию данного метода вынести за класс. Создать несколько объектов данного класса (как минимум 5). Каждый объект заполнить данными и объединить в массив. Выполнить задание а,б,в согласно варианту. Tour. Страна, количество дней отдыха, количество людей, уровень (от 2 до 5), дата вылета, цена. Создать массив объектов. Вывести: а) Все путевки для заданной пользователем страны. б) Все путевки не дороже 20000 грн. уровень которых от 4 до 5 в 7 дней отдыха. в) Все путевки, в которых до даты вылета осталось не менее 15 дней от текущей даты.

Ответы на вопрос

Ответ в прикрепленном файле, С++20




Давайте создадим класс `Tour` с приватными полями, методами `set`, `get` и `showAll()`. Затем создадим несколько объектов этого класса, объединим их в массив и выполним задания a, б, в согласно вашему варианту.
```python from datetime import datetime, timedelta
class Tour: def __init__(self, country, duration, people_count, level, departure_date, price): self.__country = country self.__duration = duration self.__people_count = people_count self.__level = level self.__departure_date = departure_date self.__price = price
def set_country(self, country): self.__country = country
def get_country(self): return self.__country
def set_duration(self, duration): self.__duration = duration
def get_duration(self): return self.__duration
def set_people_count(self, people_count): self.__people_count = people_count
def get_people_count(self): return self.__people_count
def set_level(self, level): self.__level = level
def get_level(self): return self.__level
def set_departure_date(self, departure_date): self.__departure_date = departure_date
def get_departure_date(self): return self.__departure_date
def set_price(self, price): self.__price = price
def get_price(self): return self.__price
def show_all_tours(tours): for tour in tours: print(f"Country: {tour.get_country()}, Duration: {tour.get_duration()} days, People Count: {tour.get_people_count()}, Level: {tour.get_level()}, Departure Date: {tour.get_departure_date()}, Price: {tour.get_price()} UAH")
# Создаем несколько объектов класса Tour tour1 = Tour("Italy", 7, 2, 4, datetime(2023, 12, 15), 18000) tour2 = Tour("Spain", 10, 4, 5, datetime(2023, 12, 10), 22000) tour3 = Tour("Greece", 5, 3, 3, datetime(2023, 12, 20), 15000) tour4 = Tour("France", 14, 6, 5, datetime(2023, 12, 5), 25000) tour5 = Tour("Turkey", 7, 2, 4, datetime(2023, 12, 25), 19000)
# Объединяем объекты в массив tours_array = [tour1, tour2, tour3, tour4, tour5]
# Задание а: Вывести все путевки для заданной пользователем страны. user_country = input("Введите страну: ") selected_tours_a = [tour for tour in tours_array if tour.get_country().lower() == user_country.lower()] print("\nПутевки для страны", user_country) show_all_tours(selected_tours_a)
# Задание б: Вывести все путевки не дороже 20000 грн, уровень которых от 4 до 5 в 7 дней отдыха. selected_tours_b = [tour for tour in tours_array if 4 <= tour.get_level() <= 5 and tour.get_price() <= 20000 and tour.get_duration() == 7] print("\nПутевки с уровнем от 4 до 5 и стоимостью не более 20000 грн на 7 дней отдыха") show_all_tours(selected_tours_b)
# Задание в: Вывести все путевки, в которых до даты вылета осталось не менее 15 дней от текущей даты. current_date = datetime.now() selected_tours_c = [tour for tour in tours_array if (tour.get_departure_date() - current_date).days >= 15] print("\nПутевки, до даты вылета которых осталось не менее 15 дней от текущей даты") show_all_tours(selected_tours_c) ```
Примечание: 1. В примере я использовал `datetime` из стандартной библиотеки Python для представления дат. Удостоверьтесь, что она поддерживается в вашей среде выполнения Python. 2. Для удобства ввода страны я привожу ее к нижнему регистру при сравнении.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili