Задание

Задание 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);
    }

}