Hey Java Forum,
ich habe 2 4D Vektoren erstellt die ich miteinander addieren möchte nur addiert er leider was falsches. Da ich seit geraumer Zeit den Fehler nicht finden kann, hoffe ich das jemand ein besseres Auge hat und mich erlösen kann
MfG.
//Erste Klasse
//Zweite Klasse
ich habe 2 4D Vektoren erstellt die ich miteinander addieren möchte nur addiert er leider was falsches. Da ich seit geraumer Zeit den Fehler nicht finden kann, hoffe ich das jemand ein besseres Auge hat und mich erlösen kann
MfG.
//Erste Klasse
Java:
public class Vektor4D{
private double x;
private double y;
private double z;
private double u;
public Vektor4D(double x1, double y1, double z1, double u1){
this.x = x1;
this.y = y1;
this.z = z1;
this.u = u1;
}
//Getter
public double getX(double x1){
this.x = x1;
return x;
}
public double getY(double y1){
this.y = y1;
return y;
}
public double getZ(double z1){
this.z = z1;
return z1;
}
public double getU(double u1){
this.u = u1;
return u;
}
//Setter
public void setX(double x1){
this.x = x1;
}
public void setY(double y1){
this.y = y1;
}
public void setZ(double z1){
this.z = z1;
}
public void setU(double u1){
this.u = u1;
}
public Vektor4D add(Vektor4D v){
this.x = this.x + v.x;
this.y = this.y + v.y;
this.z = this.z + v.z;
this.u = this.u + v.u;
return this;
}
public Vektor4D getAdd(Vektor4D v){
return this;
}
public Vektor4D substract(Vektor4D v){
this.x = this.x - v.x;
this.y = this.y - v.y;
this.z = this.z - v.z;
this.u = this.u - v.u;
return this;
}
public double skalar(Vektor4D v){
return (this.x * v.x)+(this.y * v.y)+(this.z * v.z)+(this.u * v.u);
}
public double length(){
return x+y+z+u;
}
public boolean equals(Vektor4D v){
boolean equals = false;
if(this.x == v.x && this.y == v.y && this.z == v.z && this.u == v.u){
equals = true;
}
return equals;
}
@Override
public String toString() {
return "Vektor X: " + x + "\n" + "Vektor Y: " + y + "\n" + "Vektor Z: " + z + "\n" + "Vektor U: " + u;
}
}
//Zweite Klasse
Java:
import java.util.Scanner;
public class Vektor4DAusgabe {
public static void main(String[] args) {
Vektor4D v1 = new Vektor4D(0.0, 0.0, 0.0, 0.0);
Vektor4D v2;
v2 = new Vektor4D(0.0, 0.0, 0.0, 0.0);
Scanner sc = new Scanner(System.in);
System.out.println("Geben Sie eine Nr ein");
System.out.println("Vektoren Koordinaten erzeugen (1)");
System.out.println("Vektoren addieren (2)");
System.out.println("Vektoren subtrahieren (3)");
System.out.println("Vektormultiplikation mit einem Skalar (4)");
System.out.println("Vektorlaenge ermitteln (5)");
System.out.println("Vektorkoordinaten ausgeben (6)");
int input = sc.nextInt();
switch (input) {
case 1:
System.out.println("Geben Sie die 2 * 4 Koordinaten (x,y,z,u) für Vektor 1 und Vektor 2 ein");
for (int i = 0; i < 8; i++) {
double vInput = sc.nextDouble();
v1.setX(vInput);
v1.setY(vInput);
v1.setZ(vInput);
v1.setU(vInput);
v2.setX(vInput);
v2.setY(vInput);
v2.setZ(vInput);
v2.setU(vInput);
}
case 2:
System.out.println(v1.add(v2));
}
}
}