Skip to content

edwlad/class-vector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Векторы на плоскости

Задача

Вам необходимо реализовать класс Vector.

Инициализатор объекта должен принимать два параметра - координаты вектора.

У вектора с координатами x и y должно быть строковое представление вида "V(x, y)".

Вам необходимо реализовать операции для векторов: ==, !=, +, +=, -, -=, умножение на число (левостороннее и правостороннее).

Реализуйте операции сравнения векторов: >, >=, <, <=. Для сравнения используйте длину вектора.

Переопределите магический метод len для вектора. Он должен возвращать длину вектора.

Реализуйте функцию scalar(self, other), которая будет находить скалярное произведение векторов и возвращать его.

Реализуйте функцию cos(self, other), которая будет находить косинус угла между векторами.

Реализуйте функции getX(self) и getY(self), которые будут возвращать соответствующую координату.

Если вы не знакомы с такими понятиями, то всю теорию можно найти здесь.

Тестировать можно с этим кодом:

a = Vector(1, 2)  
b = Vector(3, 4)  
print(a, b)  
print(a == b)  
print(a != b)  
print(a + b)  
print(a - b)  
print(a * 3)  
print(4 * a)  
a += b  
print(a)  # V(4, 6)  
a -= Vector(1, 1)  
print(a)  #(3, 5)  
print("len(a) =", len(a))  
print("len(b) =", len(b))  
print(a > b)  
print(a >= b)  
print(a < b)  
print(a <= b)  
print(b.getX(), b.getY())  
print(a.scalar(b))  # 29  
print(a.cos(b))  # ≈ 0.99469

About

Векторы на плоскости

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages