1. Главная
  2. Библиотека
  3. Программирование
  4. Bonpoc: Ниже приведен код на Python. Что произойдет при...
Решение задачи на тему

Bonpoc: Ниже приведен код на Python. Что произойдет при перегрузке оператора + для класса Vector в следующем коде? Tun omsema: Одиночный выбор • с выбором одного правильного ответа из нескольких предложенных вариантов Программа выведет: Vector (4,6)

  • Программирование
  • #Языки программирования (C++, Java, Python и др.)
  • #Структуры и алгоритмы обработки данных
Bonpoc: Ниже приведен код на Python. Что произойдет при перегрузке оператора + для класса Vector в следующем коде? Tun omsema: Одиночный выбор • с выбором одного правильного ответа из нескольких предложенных вариантов Программа выведет: Vector (4,6)

Условие:

Bonpoc:
Ниже приведен код на Python.


class Vector:
def init(self, x, y):
self.x = x
self.y = y
def add(self, other):
if isinstance(other, Vector):
return Vector(self.x + other.x, self.y + other.y)
return NotImplemented
def repr(self):
return f"Vector({self.x}, {self.y})"
v1 = Vector(1, 2)
v2 = Vector(3, 4)
result = v1 + v2
print(result)


Что произойдет при перегрузке оператора + для класса Vector в следующем коде?

Tun omsema: Одиночный выбор • с выбором одного правильного ответа из нескольких предложенных вариантов

Программа выведет:
Vector (4,6)

Программа выведет:
Vector(1, 2) + Vector(3, 4)

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

Программа выдаст ошибку из-за отсутствия метода _repr_.

Решение:

Рассмотрим подробно работу программы:

  1. Определён класс Vector с двумя атрибутами: x и y. В конструкторе (init) значения атрибутов задаются в момент создания объекта.

  2. Для класса перегружается оператор + с помощью метода add. В этом ...

Выбери предмет