# java

ashhu
java
Posted in : Java Beginners

May 6, 2009 at 11:47 AM

Hi Friend,

Try the following code:

public final class Vector {
private final int in;
private final double[] data;

public Vector(int in){
this.in = in;
this.data = new double[in];
}
public Vector(double[] d){
in = d.length;
data = new double[in];
for(int i = 0; i < in; i++){
data[i] = d[i];
}
}

public double dot(Vector b){
Vector a = this;
if(a.in != b.in){ throw new RuntimeException("Dimensions don't agree");
}
double sum = 0.0;
for (int i = 0; i < in; i++) {
sum = sum + (a.data[i] * b.data[i]);
}
return sum;
}

public double magnitude(){
Vector a = this;
return Math.sqrt(a.dot(a));
}

public Vector direction(){
Vector a = this;
return a.times(1.0 / a.magnitude());
}

public Vector plus(Vector b){
Vector a = this;
if (a.in != b.in) { throw new RuntimeException("Dimensions don't agree"); }
Vector c = new Vector(in);
for(int i = 0; i < in; i++){
c.data[i] = a.data[i] + b.data[i];
}
return c;
}
// return a - b
public Vector minus(Vector b){
Vector a = this;
if (a.in != b.in) { throw new RuntimeException("Dimensions don't agree"); }
Vector c = new Vector(in);
for(int i = 0; i < in; i++){
c.data[i] = a.data[i] - b.data[i];
}
return c;
}
// create and return a new object whose value is (this * factor)
public Vector times(double factor) {
Vector c = new Vector(in);
for(int i = 0; i < in; i++){
c.data[i] = factor * data[i];
}
return c;
}
// return the corresponding unit vector
public double cartesian(int i){
return data[i];
}
// return a string representation of the vector
public String toString(){
String s = "( ";
for(int i = 0; i < in; i++) {
s = s + data[i] + " ";
}
return s + ")";
}
public static void main(String[] args) {
double[] xdata = { 1.5, 2.5, 3.5, 4.5 };
double[] ydata = { 1.5, 2.5, 3.5, 4.5 };
Vector x = new Vector(xdata);
Vector y = new Vector(ydata);
System.out.println("All result display: ");
System.out.println("x = " + x);
System.out.println("y = " + y);
System.out.println("x + y = " + x.plus(y));
System.out.println("10x = " + x.times(10.0));
System.out.println("|x| = " + x.magnitude());
System.out.println("<x, y> = " + x.dot(y));
System.out.println("|x - y| = " + x.minus(y).magnitude());
}
}

Thanks

java
java  diff bt core java and java
java
java  what is java
JAVA
JAVA  how the name came for java language as "JAVA
java
java   why iterator in java if we for loop
java
java  explain technologies are used in java now days and structure java
java
java  different between java & core java
Java
Java   Whether Java is pure object oriented Language
java
java  is java open source
java
java  what is java reflection
java
java   in java does not pointers concept but what is nullpointers in java?   nullpointer is a runtime Exception
java
what is the size of array in java ?  what is the size of array in java ? what is the mean of finalize in java
java
java   What is ?static? keyword
java
java  RARP implementation using java socket
java
java  sample code for RARP using java
java
java  Does java allows multiline comments
Java
Java  how to do java in command prompt
java
java  give a simple example for inheritance in java
java
java  give a simple example for inheritance in java
java
java  why to set classpath in java
java
java  why to set classpath in java
java
java  why to set classpath in java
java
java  why to set classpath in java
java
java  Write a java code to print "ABABBABCABABBA
java
java  write a program in java to acess the email
java
java  send me java interview questions
java
java  how use java method
java
java  what are JAVA applications development tools
Java
Java   Whether Java is Programming Language or it is SOftware
java
java  is java purely object oriented language
java
java  why multiple inheritance is not possible in java
java
java  explain object oriented concept in java