Олимпиадный тренинг

Задача . Класс Vector


Задача

Темы:

Класс Vector наследуется от класса PointВ систему сдать программу с классами Vector и Point.

Реализовать возможность инициализации объекта класса Vector по двум точкам, четырем координатам в декартовой системе координат, при этом оставить у подкласса возможность базового класса создавать вектор по другой точке (вектору), двум координатам в декартовой системе координат.

Методы:

  • dot_product(), __mul__()- скалярное произведение векторов
  • cross_product(), __xor__() - векторное произведение векторов
  • __mul()__, __rmul__() -  умножение вектора на число

Примеры
Входные данныеВыходные данные
1 a = Vector(Point(4, 3))
b = Vector(Point(4, -3))
print(a, b)
print(a.dot_product(b))
c = Vector(Point(-3, 4))
print(a * c)
print(a.dist())
print(a.cross_product(b))
print(b ^ c) # __xor__()
d = Vector(Point(4, 3), Point(4, -3))
print(d)
d = 5 * d
print(d)
(4, 3) (4, -3)
7
0
5.0
-24
7
(0, -6)
(0, -30)

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
Python13
Комментарий учителя