0 / 0 / 0
Регистрация: 10.11.2021
Сообщений: 16

Реализуйте класс автомобиля, а также класс, который будет описывать автобус

02.12.2021, 19:40. Показов 13733. Ответов 9

Студворк — интернет-сервис помощи студентам
Помогите с задачей. Мне не очень понятно как это сделать. Если вам не лень, то напишите код. Если нет, то обьясните как.

Автомобиль имеет координаты своего положения и угол, описывающий направление движения. Он может быть изначально поставлен в любую точку с любым направлением (конструктор), может проехать в выбранном направлении определённое расстояние и может повернуть, то есть изменить текущее направление на любое другое

Реализуйте класс автомобиля, а также класс, который будет описывать автобус. Кроме того, что имеется у автомобиля, у автобуса должны быть поля, содержащие число пассажиров и количество полученных денег, изначально равные нулю. Также должны быть методы «войти» и «выйти», изменяющие число пассажиров. Наконец, метод move должен быть переопределён, чтобы увеличивать количество денег в соответствии с количеством пассажиров и пройденным расстоянием.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.12.2021, 19:40
Ответы с готовыми решениями:

Реализуйте класс, который будет служить контейнером для класса
Создать контейнер можно с помощью стандартного класса контейнера. Класс контейнер должен реализовывать следующий интерфейс: interface...

Реализуйте класс MyString, который будет иметь поле строки и следующие методы
Реализуйте класс MyString, который будет иметь поле строки и следующие методы: метод Reverse(), который возвращает строку в перевернутом...

Класс млекопитающих: создать дочерний класс кошка, который также характеризуется именем и положением в пространстве
Есть класс млекопитающих. Он у меня характеризуется именем и положением в пространстве. Хочу создать дочерний класс кошка, который также...

9
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,310
02.12.2021, 19:53
Цитата Сообщение от Lddrnox Посмотреть сообщение
Реализуйте класс автомобиля
где класс?
0
0 / 0 / 0
Регистрация: 10.11.2021
Сообщений: 16
02.12.2021, 22:34  [ТС]
Вот я не понимаю, что делать в этом классе. Помогите пожалуйста
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38203 / 21135 / 4310
Регистрация: 12.02.2012
Сообщений: 34,740
Записей в блоге: 14
03.12.2021, 09:00
Лучший ответ Сообщение было отмечено Lddrnox как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
11
class Automobile:
    def __init__(self,x,y,fi):
        self.x=x
        self.y=y
        self.fi=fi
    def move(self, dist):
        self.x=self.x+dist*cos(fi)
        self.y=self.y+dist*sin(fi)
 
class Bus(Automobile):
    pass  # дальше сам
0
0 / 0 / 0
Регистрация: 10.02.2022
Сообщений: 2
08.03.2022, 15:26
решили ли вы задачу?
0
0 / 0 / 0
Регистрация: 10.11.2021
Сообщений: 16
09.03.2022, 00:39  [ТС]
Да, сделал
0
0 / 0 / 0
Регистрация: 04.04.2022
Сообщений: 6
08.06.2022, 14:53
покажи как сделал поделись
0
0 / 0 / 0
Регистрация: 10.11.2021
Сообщений: 16
09.06.2022, 06:35  [ТС]
Вот код, если кще нужно:

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
 
class Bus(Car):
    PAY_COEFF = 0.01
    MAX_PASSENGERS = 60
 
    def __init__(self, x, y, direction):
        super().__init__(x, y, direction)
        self.passengers = 0
        self.money = 0
 
    def move(self, distance):
        self.money += Bus.PAY_COEFF * self.passengers * distance
        super().move(distance)
 
    def enter(self, passengers):
        if passengers + self.passengers > Bus.MAX_PASSANGERS:
            print('Достигнута максимальная вместимость автобуса')
            print('Уехать смогли только {:d}'.format(Bus.MAX_PASSANGERS - self.passengers))
            print('Остались {:d}'.format(passengers - (Bus.MAX_PASSANGERS - self.passengers)))
            passengers = Bus.MAX_PASSANGERS - self.passengers
        return passengers
 
    def exit(self, passengers):
        if passengers > self.passengers:
            print('Вышли все из автобуса')
            passengers = self.passengers
 
        return passengers
 
    def __str__(self):
        lines = [
            super().__str__(),
            f'В автобусе {self.passengers} пассажиров',
            f'У водителя {round(self.money, 2)} денег',
        ]
        return '\n'.join(lines)
0
0 / 0 / 0
Регистрация: 04.04.2022
Сообщений: 6
09.06.2022, 12:45
Спасибо. А это весь код ?
Почему-то ругается на 'Unresolved reference 'Car' ' class Bus
0
0 / 0 / 0
Регистрация: 10.11.2021
Сообщений: 16
09.06.2022, 23:40  [ТС]
Нет, это был только класс автобуса. Вот весь код:
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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
import math
import sys
    
    
class Car:
    
    def __init__(self, x, y, fi):
    
        self.x = x
    
    def move(self, dist):
    
        self.x = self.x + dist * math.cos(self.fi)
    
        self.y = self.y + dist * math.sin(self.fi)
 
    
 
class Bus(Car):
    PAY_COEFF = 0.01
    
    MAX_PASSENGERS = 60
    
 
    
    def __init__(self, x, y, direction):
    
        super().__init__(x, y, direction)
    
        self.passengers = 0
    
        self.money = 0
    
 
    
    def move(self, distance):
    
        self.money += Bus.PAY_COEFF * self.passengers * distance
    
        super().move(distance)
    
 
    
    def enter(self, passengers):
    
        if passengers + self.passengers > Bus.MAX_PASSANGERS:
    
            print('Достигнута максимальная вместимость автобуса')
    
            print('Уехать смогли только {:d}'.format(Bus.MAX_PASSANGERS - self.passengers))
    
            print('Остались {:d}'.format(passengers - (Bus.MAX_PASSANGERS - self.passengers)))
    
            passengers = Bus.MAX_PASSANGERS - self.passengers
    
        return passengers
    
 
    
    def exit(self, passengers):
    
        if passengers > self.passengers:
    
            print('Вышли все из автобуса')
    
            passengers = self.passengers
    
 
    
        return passengers
    
 
    
    def __str__(self):
    
        lines = [
    
            super().__str__(),
    
            f'В автобусе {self.passengers} пассажиров',
    
            f'У водителя {round(self.money, 2)} денег',
    
        ]
    
        return '\n'.join(lines)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.06.2022, 23:40
Помогаю со студенческими работами здесь

Разработать класс Car. Добавить в класс 3 поля: марка автомобиля, цвет автомобиля и стоимость
Разработать класс Car. Добавить в класс 3 поля: марка автомобиля, цвет автомобиля (использовать перечисление), стоимость автомобиля...

Класс: Нужно написать класс,который будет вычислять заданную функцию...
Нужно написать класс,который будет вычислять вот такую функцию y= \sqrt{1/x^n} , также приложу картинку для удобства. x и n - параметры.

Реализуйте класс для хранения ФИО и номера телефона человека, класс для хранения даты рождения человека, а также класс для хранения ФИО и почтового ад
Реализуйте класс для хранения ФИО и номера телефона человека, класс для хранения даты рождения человека, а также класс для хранения ФИО и...

Создать класс «Пассажир» и класс «Автобус»
Создать класс «Пассажир» и класс «Автобус», как коллекцию объектов класса «Пассажир». Число пассажиров, перевезенных за смену, и их...

Реализуйте класс, который хранит целые числа в двумерной таблице
Реализуйте класс Table, который хранит целые числа в двумерной таблице. При инициализации Table(rows, cols) экземпляру передаются число...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru