Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/19: Рейтинг темы: голосов - 19, средняя оценка - 4.74
0 / 0 / 0
Регистрация: 26.11.2021
Сообщений: 7
1

Создать класс "Дата". Реализовать в классе методы

03.12.2021, 19:45. Показов 3590. Ответов 2

Author24 — интернет-сервис помощи студентам
1. Создать класс с полями, указанными в индивидуальном задании.
2. Реализовать в классе методы:
-конструктор по умолчанию;
-деструктор для освобождения памяти (с сообщением об уничтожении
объекта);
-функции обработки данных, указанные в индивидуальном задании;
-функцию формирования строки информации об объекте.
3. Создать проект для демонстрации работы: сформировать объекты со
значениями-константами и с введенными с клавиатуры значениями полей объекта.
В основной ветке программы создайте три объекта класса. Вывести результаты
работы на экран.
Миниатюры
Создать класс "Дата". Реализовать в классе методы  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.12.2021, 19:45
Ответы с готовыми решениями:

Создать класс Комната с полями: длина, ширина, высота (в метрах). Реализовать в классе методы:
Задание 1. Создать класс Комната с полями: длина, ширина, высота (в метрах). Реализовать в классе...

Написать класс «Матрица». В классе реализовать указанные методы
Написать класс «Матрица». В классе реализовать следующие методы: *** - конструкторы (по умолчанию,...

Реализовать класс для матриц. В этом классе реализовать интерфейс, содержащий методы для выполнения операций
Реализовать класс для матриц. В этом классе реализовать интерфейс, содержащий методы для выполнения...

Написать класс «массив» (В классе реализовать следующие методы: конструкторы (по умолчанию, с параметрами,)
помогите пожалуйста! необходимо: 1. Написать класс «массив». 2. В классе реализовать следующие...

Реализовать класс собак (Dog) в классе определить свойства – имя, вес, окрас. И методы
Реализовать класс собак (Dog). В классе определить свойства – имя, вес, окрас. И методы –...

2
0 / 0 / 0
Регистрация: 03.11.2023
Сообщений: 1
03.11.2023, 09:25 2
код на python:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
class data:
    def __init__(self, day, month, year):
        self.day = day
        self.month = month
        self.year = year
    def visokosni(self):
        if self.year % 4 == 0 and (self.year % 100 != 0 or self.year % 400 == 0):
            return True
        else:
            return false
    def days_in_month(self):
        months_30_days = [4, 6, 9, 11] 
        self.a=0
        if self.month == 2 and visokosni()==1:
            self.a= 29
        elif self.month == 2 and visokosni()==2:    
            self.a= 28
        elif self.month in months_30_days:
            self.a= 30
        else:
            self.a= 31
    def plusfivedays(self):
        self.day += 5
        if self.day > self.a:
            self.day -= self.a
            self.month += 1
            if self.month > 12:
                self.month = 1
                self.year += 1
date = data(28,10,2004)
print("Дата:", date.day, date.month, date.year)
print("год високосны?", date.visokosni())
date.days_in_month()
date.plusfivedays()
print("Увеличенная дата на 5 дней:", date.day, date.month, date.year)
0
3742 / 1938 / 612
Регистрация: 21.11.2021
Сообщений: 3,722
03.11.2023, 12:19 3
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
class Date:
    months_30_days = [4, 6, 9, 11]
    month_name = {1: 'января', 2: 'февраля', 3: 'марта', 4: 'апреля', 5: 'мая', 6: 'июня',
                  7: 'июля', 8: 'августа', 9: 'сентября', 10: 'октября', 11: 'ноября', 12: 'декабря'}
 
    def __init__(self, day, month, year):
        self.day = day
        self.month = month
        self.year = year
 
    def __del__(self):
        print(f'Удален объект {self}.')
        
    def is_leap(self):
        return self.year % 400 == 0 or self.year % 100 and self.year % 4 == 0
 
    def days_in_month(self):
        if self.month == 2:
            return 28 + self.is_leap()
        if self.month in Date.months_30_days:
            return 30
        return 31
            
    def set_next_date(self):
        if self.day < self.days_in_month():
            self.day += 1
        elif self.month < 12:
            self.month += 1
            self.day = 1
        else:
            self.year += 1
            self.month = 1
            self.day = 1
 
    def increase_by_5_days(self):
        for _ in range(5):
            self.set_next_date()
        return self
 
    def __str__(self):
        return f'{self.day}-е {Date.month_name[self.month]} {self.year} года'
 
date = Date(31,12,2004)
print(date)
print(f'Это {["невисокосный","високосный"][date.is_leap()]} год.')
print(f'Дата через пять дней: {date.increase_by_5_days()}.')
print(f'Это {["невисокосный","високосный"][date.is_leap()]} год.')
print(f'Дата еще через пять дней: {date.increase_by_5_days()}.')
del date
d_gagarin = Date(9,3,1934)
print()
print(f'Юрий Гагарин родился в день {d_gagarin}. В день {d_gagarin.increase_by_5_days()} ему исполнилось 5 дней.')
d_pushkin_st = Date(26,5,1799)
d_pushkin_nov = Date(6,6,1799)
print(f'Александр Пушкин родился в день {d_pushkin_nov} ({d_pushkin_st} по старому стилю). '
      f'В день {d_pushkin_nov.increase_by_5_days().increase_by_5_days()} ему исполнилось 10 дней.')
print()
d, m, y = map(int, input('Введите через пробел цифрами день, месяц, год (четыре цифры)->').split())
dd = Date(d,m,y)
print(f'Вы ввели дату {dd}. Это {["невисокосный","високосный"][dd.is_leap()]} год.')
print(f'Через пять дней будет дата {dd.increase_by_5_days()}.')
2
03.11.2023, 12:19
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.11.2023, 12:19
Помогаю со студенческими работами здесь

Реализовать класс-оболочку Number для числового типа float. Реализовать методы сложения и деления. Создать производный к
..Реализовать класс-оболочку Number для числового типа float. Реализовать методы сложения и...

Создать класс четырехугольник, члены класса - координаты 4-х точек. предусмотреть в классе методы...
Создать класс четырехугольник, члены класса - координаты 4-х точек. предусмотреть в классе методы...

1. Создать класс треугольник, члены класса – координаты 3-хточек. Предусмотреть в классе методы проверки существования т
1. Создать класс треугольник, члены класса – координаты 3-хточек. Предусмотреть в классе методы...

6. Создать класс треугольник, члены класса – координаты 3-х точек. Предусмотреть в классе методы проверки существования
6. Создать класс треугольник, члены класса – координаты 3-х точек. Предусмотреть в классе методы...

Создать класс квадрат, члены класса - длина стороны. Предусмотреть в классе методы вычисления и вывода сведений о
Создать класс квадрат, члены класса - длина стороны. Предусмотреть в классе методы вычисления и...

Создать класс треугольник, члены класса - длины 3-х сторон. Описать в классе конструкторы, деструктор, методы проверки с
Создать класс треугольник, члены класса - длины 3-х сторон. Описать в классе конструкторы,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Почему при инициализации массива 3х3х3 будет создано 13 одномерных массивов?
Alexander-7 16.01.2025
При инициализации многомерного массива, в данном случае трехмерного массива размерностью 3x3x3, может возникнуть путаница относительно того, как структура данных организована в памяти. Общее число. . .
Использование связки C# и PHP в корпоративной разработке и микросервисной архитектуре
InfoMaster 16.01.2025
Введение в интеграцию C# и PHP В современной корпоративной разработке все чаще возникает потребность в создании гибких и масштабируемых решений, способных эффективно решать широкий спектр. . .
Как использовать Kerio дома для управления сетью и пользователями
InfoMaster 16.01.2025
Использование технологий для улучшения повседневной жизни стало неотъемлемой частью современного быта. Одной из таких технологий является Kerio — мощный инструмент для управления сетью и. . .
Есть ли будущее у DVD и Blu-ray?
InfoMaster 16.01.2025
В эпоху стремительного развития цифровых технологий и повсеместного распространения потоковых сервисов вопрос о будущем физических носителей информации становится все более актуальным. Особенно остро. . .
Как проводить научные вычисления на Python
InfoMaster 15.01.2025
Python стал одним из наиболее востребованных языков программирования в области научных вычислений благодаря своей простоте, гибкости и обширной экосистеме специализированных библиотек. Научные. . .
Создание игры типа Minecraft на PyGame/Python: пошаговое руководство
InfoMaster 15.01.2025
В данном руководстве мы рассмотрим процесс создания игры в стиле Minecraft с использованием библиотеки PyGame на языке программирования Python. Этот проект идеально подходит как для начинающих. . .
Как создать свою первую игру в стиле Doom на Unreal Engine
InfoMaster 15.01.2025
Разработка шутера от первого лица в стиле классического Doom представляет собой увлекательное путешествие в мир игрового программирования, где сочетаются творческий подход и технические навыки. . . .
Параллельное программировани­е: основные технологии и принципы
InfoMaster 15.01.2025
Введение в параллельное программирование Параллельное программирование представляет собой фундаментальный подход к разработке программного обеспечения, который позволяет одновременно выполнять. . .
Как написать микросервис на C# с Kafka, MediatR, Redis и GitLab CI/CD
InfoMaster 15.01.2025
В современной разработке программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот подход позволяет разделить сложную систему. . .
Что такое CQRS и как это реализовать на C# с MediatR
InfoMaster 15.01.2025
Концепция CQRS и её роль в современной разработке В современном мире разработки программного обеспечения архитектурные паттерны играют ключевую роль в создании масштабируемых и поддерживаемых. . .
Как настроить CI/CD с Azure DevOps
InfoMaster 15.01.2025
CI/ CD, или непрерывная интеграция и непрерывное развертывание, представляет собой современный подход к разработке программного обеспечения, который позволяет автоматизировать и оптимизировать процесс. . .
Как настроить CI/CD с помощью Jenkins
InfoMaster 15.01.2025
Введение в CI/ CD и Jenkins В современной разработке программного обеспечения непрерывная интеграция (CI) и непрерывная доставка (CD) стали неотъемлемыми элементами процесса создания качественных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru