Lab Assignment #0

Lab Assignment #0

Objective: This assignment will help you review the ArrayList class as a type-safe generic data type.

Program assignment: Build an ADT for vectors.
Your program should have the following header:
A vector x consists of n real components [x1, x2, …, xn]. The operations between two vectors x = [x1, x2, …,
xn] and y = [y1, y2, …, yn] are defined as follows:

addition [x1 + y1, x2 + y2, …, xn + yn]

subtraction [x1 – y1, x2 – y2, …, xn – yn]

dot-product x • y = x1 * y1 + x2 * y2 + … + xn * yn

equivalence x == y if (x1 = y1 and x2 = y2 and … and xn = yn)

scalar-product s * x = [s * x1, s * x2, …, s * xn], where s is a real number.
absolute-value | x | =  (x • x)

1. You should have two constructors:
a. One constructor, with parameters (double [ ] init values), where init values are
the initialization values for the new vector.
b. The copy constructor.

2. You should have an accessor function for the k-th components of a vector.

3. You should have member functions for arithmetic: plus() and minus() which, for example, would
be used as: x = y.plus(z), where x, y, and z are MyVector objects.

4. You should have a member function for scaling: scaled()which, for example, would be used as:
x = y.scaledBy(s), where x and y are MyVector objects, and s is a real number.

5. You should override the toString() method for display on System.out

6. You should override the equals() method.

7. You should create an absolute value function: abs()

8. You should build a dot product function: dot()

Design specifications

• Create a Java project project0 and a package package0.
• Call your class MyVector. Define a second class containing a main method that exercises the class
MyVector as an application. That is, a main method that runs through a selection of arithmetic and
logical operations and uses MyVector output. The two classes should be saved in two different files.
• Your class MyVector should keep the vector in an ArrayList abstract data type.

Complete Answer:

Get Instant Help in Homework Asap
Get Instant Help in Homework Asap
Calculate your paper price
Pages (550 words)
Approximate price: -
Open chat
1
Hello 👋
Thank you for choosing our assignment help service!
How can I help you?