Top.Mail.Ru
Ответы

Помогите срочно с заданиями по Python

Задание:
1. Реализовать программу, выполняющую перебор двух последовательностей поэлементно, причем такую, что цикл for вложен в цикл while, и когда попадаются совпадающие символы, программа должна выводить совпавший элемент и его индекс.
2. Реализовать функцию, принимающую от пользователя любую последовательность и с помощью функций map и lambda меняющую элементы, таким образом, что если элемент число, тогда производится операция умножения на пять, а если элемент имеет строковый тип, тогда производится размножение элемента в пять раз. Результат работы возвращать в виде списка.
3. Реализовать класс Volume, в котором определить атрибуты: length (длина), width (ширина) и height (высота). Значения данных атрибутов должны передаваться при создании экземпляра класса. Атрибуты сделать защищенными. Определить метод расчета, использовав формулу: длина*ширина*высота. Проверить работу метода.
4. Реализовать базовый класс Employee, в котором определить атрибуты: name, patronymic, surname, salary. Последний атрибут должен быть защищенным и ссылаться на словарь, содержащий элементы: жалование и бонус, например, {"wage": wage, "bonus": bonus}. Создать класс Salary на базе класса Employee. В классе Salary реализовать методы получения полного имени сотрудника (get_full_name) и дохода с учетом премии (get_total_income). Создать экземпляры класса Salary, передать данные, проверить значения атрибутов, вызвать методы экземпляров.

По дате
По Рейтингу
Аватар пользователя
Мастер

Конечно, я могу помочь с заданиями по Python. Ниже представлены решения для каждого из заданий:

  1. Реализация программы для перебора двух последовательностей:

12345678910111213
 def sequence_iteration(seq1, seq2): 
    i = 0 
    while i < len(seq1): 
        j = 0 
        while j < len(seq2): 
            if seq1[i] == seq2[j]: 
                print("Совпадение:", seq1[i]) 
                print("Индекс:", i) 
            j += 1 
        i += 1 
 
# Пример использования: 
sequence_iteration("abcde", "fghde") 

2.Реализация функции для изменения элементов последовательности:

12345678
 def modify_sequence(sequence): 
    modified_list = list(map(lambda x: x * 5 if isinstance(x, int) else x * 5, sequence)) 
    return modified_list 
 
# Пример использования: 
user_input = input("Введите элементы последовательности через пробел: ").split() 
modified_sequence = modify_sequence(user_input) 
print(modified_sequence) 

3.Реализация класса Volume:

12345678910111213
 class Volume: 
    def __init__(self, length, width, height): 
        self._length = length 
        self._width = width 
        self._height = height 
 
    def calculate(self): 
        return self._length * self._width * self._height 
 
# Пример использования: 
box = Volume(5, 10, 2) 
volume = box.calculate() 
print("Объем:", volume) 

4.Реализация базового класса Employee и класса Salary на его основе:

1234567891011121314151617181920
 class Employee: 
    def __init__(self, name, patronymic, surname, wage, bonus): 
        self.name = name 
        self.patronymic = patronymic 
        self.surname = surname 
        self._salary = {"wage": wage, "bonus": bonus} 
 
class Salary(Employee): 
    def get_full_name(self): 
        return f"{self.surname} {self.name} {self.patronymic}" 
 
    def get_total_income(self): 
        return sum(self._salary.values()) 
 
# Пример использования: 
employee = Salary("Иван", "Иванович", "Иванов", 50000, 10000) 
full_name = employee.get_full_name() 
total_income = employee.get_total_income() 
print("Полное имя:", full_name) 
print("Доход с учетом премии:", total_income) 

Пожалуйста, используйте предложенные решения как отправную точку для выполнения вашего задания и адаптируйте их по необходимости.