Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 27.12.2021
Сообщений: 23

Создать класс Рота

16.05.2022, 11:49. Показов 1343. Ответов 9

Студворк — интернет-сервис помощи студентам
Нужно создать класс Роты, которая будет наполняться солдатами различных типов войск, например, [Карабов Данил, танковая], мы можем добавить солдата в роту. Если текущая рота заполнена, то создать новую, мы можем найти солдата по фамилии или имени и узнать номер его роты, номер роты генерируется при создании, мы можем демобилизировать солдата из роты или перевести его в другую, а также посмотреть состав роты
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
16.05.2022, 11:49
Ответы с готовыми решениями:

Создать класс колесо, имеющее радиус. Определить конструкторы. Создать класс машин, содержащий класс колесо
Создать класс колесо, имеющее радиус. Определить конструкторы. Создать класс машин, содержащий класс колесо. Дополнительно есть марка,...

Рота попаданцев
Что вы об этом думаете? Например, почему они умерли? И что потом было с тем генералом? А с ноутом? Исходим из того, что в моменты...

Создать класс Man (человек), с полями: имя, возраст, пол и вес. Создать производный класс Student ...
Создать класс Man (человек), с полями: имя, возраст, пол и вес. Определить методы задания имени, возраста и веса. Создать производный класс...

9
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
16.05.2022, 18:00
на чем застрял?
0
0 / 0 / 0
Регистрация: 27.12.2021
Сообщений: 23
17.05.2022, 11:16  [ТС]
На начальном этапе((
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
17.05.2022, 20:37
а именно? не смог прочитать учебник про ООП ?.
0
1 / 1 / 0
Регистрация: 21.05.2022
Сообщений: 22
23.05.2022, 18:35
Цитата Сообщение от katrina18 Посмотреть сообщение
Если текущая рота заполнена, то создать новую,
Заполнена - это сколько человек?

Добавлено через 18 минут
Цитата Сообщение от katrina18 Посмотреть сообщение
Если текущая рота заполнена, то создать новую
Куда создать новую? Ее в глобальную переменную заносить или что?

Добавлено через 6 минут
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
class Rota:
    def __init__(self, number, max_number):
        self.number, self.max_number, self.names = number, max_number, dict()
        
    def append(self, name, tip):
        if (not len(self.names) > self.max_number) and (name not in self.names):
            self.names[name] = tip
            return True
        return False
    
    def find(self, name):
        return self.names.get(name, False)
    
    def send_to_another(self, name, other_rota):
        if name in self.names:
            return other_rota.append(name, self.names[name])
        return False
    
    def demobilize(self, name):
        if name in self.names:
            del self.names[name]
            return True
        return False
    
    def __str__(self):
        res = [(n + " - " + self.names[n] + "\n") for n in self.names]
        return "".join(res)
0
1 / 1 / 0
Регистрация: 21.05.2022
Сообщений: 22
23.05.2022, 18: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
class Rota:
    def __init__(self, number, max_number):
        self.number, self.max_number, self.names = number, max_number, dict()
        
    def append(self, name, tip):
        if (not len(self.names) > self.max_number) and (name not in self.names):
            self.names[name] = tip
            return True
        return False
    
    def find(self, name):
        return self.names.get(name, False)
    
    def send_to_another(self, name, other_rota):
        if name in self.names:
            return other_rota.append(name, self.names[name])
        return False
    
    def demobilize(self, name):
        if name in self.names:
            del self.names[name]
            return True
        return False
    
    def __str__(self):
        res = [(n + " - " + self.names[n] + "\n") for n in self.names]
        return "".join(res)
Добавлено через 42 секунды
Цитата Сообщение от Krekir Посмотреть сообщение
Если текущая рота заполнена, то создать новую
Не совсем понятно, метод просто должен вернуть новую роту или что?
0
0 / 0 / 0
Регистрация: 27.12.2021
Сообщений: 23
24.05.2022, 12:07  [ТС]
Кол-во может 4-5 чел., создание новой - если прошлая заполнена
0
1 / 1 / 0
Регистрация: 21.05.2022
Сообщений: 22
24.05.2022, 20:32
Цитата Сообщение от Krekir Посмотреть сообщение
Кол-во может 4-5 чел., создание новой - если прошлая заполнена
Ну вот программа ее создаст, а деть то ее куда? Есть ТЗ?
0
0 / 0 / 0
Регистрация: 27.12.2021
Сообщений: 23
25.05.2022, 12:09  [ТС]
Тогда рота будет одна, а оперировать будем солдатами. Добавить солдата в роту, убрать, показать список солдат в роте и если рота заполнена, показать сообщение, что направляйтесь в другую, примерно так
0
1 / 1 / 0
Регистрация: 21.05.2022
Сообщений: 22
31.05.2022, 20:49
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
class Rota:
    def __init__(self, number, max_number):  # номер роты, максимальное количество человек в роте
        self.number, self.max_number, self.names = number, max_number, dict()
    
    def __delitem__(self, name):  # Удалить солдата
        if (self.names.get(name, False)):
            del self.names[name]
            print(f"[+] Солдат по имени {name} удален")
            return True
        print(f"[-] Нет солдата с именем {name}!")
        return False
    
    def __str__(self):
        res = [(n + " - " + self.names[n] + "\n") for n in self.names]
        return "".join(res)[:-1]
 
    def append(self, name, tip):  # Добавить солдата
        if (not len(self.names) > self.max_number) and (name not in self.names):
            self.names[name] = tip
            print("[+] Солдат добавлен!")
            return True
        print("[-] Отправляйтесь в другую роту!")
        return False
 
 
# Дальше - примеры использования
rota = Rota(1, 5)
rota.append("вася", "пехота")
print(rota)
del rota['вася']
print(rota)
Ну тогда как-то так, если еще актуально.
Если не секрет, где такие задания дают?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.05.2022, 20:49
Помогаю со студенческими работами здесь

Создать абстрактный класс Triad (тройка) и производные классы Date (дата) и Time (время). Создать класс Memories
Создать абстрактный класс Triad (тройка) с виртуальными методами увеличения на 1. На его основе реализовать классы Date (дата) и Time...

Создать абстрактный базовый класс Тройка чисел с виртуальными методами увеличения на 1. Создать производный класс Время со своими функциями
Здравствуйте, пожалуйста помогите написать код к данной задаче, с таким условием: Создать абстрактный базовый класс Тройка чисел с...

Создать базовый класс Дом (скрытое поле: адрес, методы доступа). Создать производный класс кватрира (площадь, количество
Создать базовый класс Дом (скрытое поле: адрес, методы доступа). Создать производный класс кватрира (площадь, количество комнат, методы...

Создать базовый класс Человек. Создать производный класс Сотрудник, содержащий следующие данные
Создать базовый класс Человек. Каждый объект класса должен содержать следующие данные: ФИО, год рождения, пол. Класс должен выполнять...

Создать базовый класс Человек. Создать производный класс Сотрудник, содержащий следующие данные
Создать базовый класс Человек. Каждый объект класса должен содержать следующие данные: ФИО, год рождения, пол. Класс должен выполнять...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru