Контрольная работа
Требуемые условия завершения
Вариант 2
1. Напишите функцию, которая принимает строку и возвращает список всех подстрок, которые представляют собой анаграммы.
2. В классе `Book` добавьте метод `apply_discount`, который уменьшает цену книги на указанный фиксированный размер (например, 5 единиц). Переопределите этот метод в классе `Fiction`, чтобы скидка зависела от жанра книги и была, например, 10 единиц.
3. Расширьте модель книжного магазина, добавив класс `AudioBook`, который наследуется от `Book` и имеет дополнительный атрибут `duration` (длительность аудиокниги). Реализуйте метод `play_time`, который предоставляет информацию о времени воспроизведения книги в зависимости от скорости чтения.
4. Напишите класс `Vehicle` с атрибутами `brand` и `model`, а также методом `start`. Создайте подклассы `Bicycle` и `Motorcycle`, которые добавляют атрибуты `gear_count` и `engine_power` соответственно, а также изменяют метод `start` для вывода дополнительных данных о транспортном средстве.
5. Напишите функцию, которая принимает строку и с помощью очереди удаляет все дубликаты символов, которые следуют за последующим разом (например, "abbccee" становится "abcde").
6. Напишите функцию, которая принимает строку `s` и возвращает самую длинную подстроку, состоящую только из уникальных символов (без повторений). Если таких подстрок несколько, вернуть первую.
7. Напишите функцию, которая принимает строку и возвращает множество всех согласных букв, встречающихся в строке.
Открыто с: среда, 18 декабря 2024, 00:00
Срок сдачи: среда, 18 декабря 2024, 09:40
- Напишите функцию, которая принимает строку и возвращает список всех подстрок, которые являются палиндромами.
- Добавьте в класс Book метод discount, который уменьшает цену книги на заданный процент. Переопределите этот метод в классе Fiction, чтобы скидка была фиксированной (например, 20%).
- Расширьте модель книжного магазина, добавив класс ElBook, который наследуется от Book, но имеет дополнительный атрибут file_size (размер файла). Реализуйте метод download_speed, который рассчитывает время скачивания книги при заданной скорости интернета.
- Напишите класс Car с атрибутами brand и speed, и методом drive. Создайте подклассы ElectricCar и GasCar, которые добавляют атрибуты battery и fuel, а также изменяют метод drive для вывода дополнительных данных.
- Напишите функцию, которая принимает строку и с помощью стека удаляет все дубликаты подряд идущих символов (например, "aaabccddd" → "abd").
- Напишите функцию longest_word(s), которая принимает строку s и возвращает самое длинное слово из строки. Если таких слов несколько, вернуть первое.
- Напишите функцию, которая принимает строку и возвращает множество всех гласных букв, встречающихся в строке.
Вариант 2
1. Напишите функцию, которая принимает строку и возвращает список всех подстрок, которые представляют собой анаграммы.
2. В классе `Book` добавьте метод `apply_discount`, который уменьшает цену книги на указанный фиксированный размер (например, 5 единиц). Переопределите этот метод в классе `Fiction`, чтобы скидка зависела от жанра книги и была, например, 10 единиц.
3. Расширьте модель книжного магазина, добавив класс `AudioBook`, который наследуется от `Book` и имеет дополнительный атрибут `duration` (длительность аудиокниги). Реализуйте метод `play_time`, который предоставляет информацию о времени воспроизведения книги в зависимости от скорости чтения.
4. Напишите класс `Vehicle` с атрибутами `brand` и `model`, а также методом `start`. Создайте подклассы `Bicycle` и `Motorcycle`, которые добавляют атрибуты `gear_count` и `engine_power` соответственно, а также изменяют метод `start` для вывода дополнительных данных о транспортном средстве.
5. Напишите функцию, которая принимает строку и с помощью очереди удаляет все дубликаты символов, которые следуют за последующим разом (например, "abbccee" становится "abcde").
6. Напишите функцию, которая принимает строку `s` и возвращает самую длинную подстроку, состоящую только из уникальных символов (без повторений). Если таких подстрок несколько, вернуть первую.
7. Напишите функцию, которая принимает строку и возвращает множество всех согласных букв, встречающихся в строке.