[Java] Класс двухмерный вектор
Задание
Задание 1. Создайте описание класса вектор
Создайте класс Vec2d
описывающий двумерный вектор.
По мере добавления новых методов - проиллюстрируйте и протестируйте работу с ними дописывая код в main функцию в Main классе.
Нужно сделать:
- Два вещественных поля
- Конструктор
- Метод
print
который выводит в консоль описание прямоугольника в симпатичном виде - Метод
length
который возвращает длинну вектора
Задание 2. Создайте метод умножения на число
Добавьте метод mul
который принимает вещественное число и умножает текущий вектор на это число.
Задание 3. Создайте метод добавления вектора
Добавьте метод add
который принимает другой вектор увеличивает текущий вектор на этот переданный вектор.
Задание 4. Создайте метод суммирования с вектором
Добавьте метод sum
который принимает аргументом второй вектор и возвращает новый вектор являющийся их суммированием (без изменения текущего и переданного векторов!).
Задание 5. Скалярное произведение
Добавьте метод dot
который принимает аргументом второй вектор и возвращает скалярное произведение.
Выполненное задание 1:
Класс Vec2d:
public class Vec2d {
public double x;
public double y;
public Vec2d(double x, double y) {
this.x = x;
this.y = y;
}
public void print() {
System.out.println("Vec2d {x=" + x + ", y=" + y + "}");
}
public double length() {
return Math.sqrt(x * x + y * y);
}
}
Класс с main-функцией для тестирования нашего вектора:
public class Main {
public static void main(String[] args) {
Vec2d a = new Vec2d(10.5, 20);
a.print();
double length = a.length();
System.out.println("length=" + length);
}
}