L
lobotaro
Gast
Ja, hallo erstmal.
Die Aufgabenstellung lautet wie folgt:
- ich habe 2 Arrays, eines für eine Matrix, eines für den dazugehörigen Vektor.
- Der Benutzer soll nun beliebige double-Werte eingeben, die dann in die Matrix und den Vektor eingeordnet werden sollen, als Beispiel wurde folgendes angegeben:
Soweit is das ja schon ganz supi toll. Problem an der Sache, meine Programmiererfahrung beträgt 3 Wochen und die Aufgabe ist eindeutig zu schwer für mich.
Was ich bisher habe:
Die System.out's habe ich nur mal für mich selber für Zwischenergebnisse eingefügt und da taucht auch schon ein tolles Problem auf...gebe ich 12 Werte ein werden 12 gezählt und eine 3 x 3 Matrix plus Vektor-Zeile erkannt. bei 20 Werten werden 20 gezählt und eine 4 x 4 Matrix plus Vektor erkannt. Soweit, so richtig...nur...gebe ich 6 Werte ein, werden nicht wie erwartet 6 gezählt mit einer 2 x 2 Matrix plus Vektor, nein...es werden 7 Werte gezählt und ich bekomme eine -2 x -2 Matrix.
Nicht, dass ich sowieso schon seit Tagen am verzweifeln bin, weil ich einfach nicht weiß, wie ich nun die Werte in die Arrays packen soll gibt mir dieses Problem nun den Rest.
Ich hoffe mir kann jemand helfen, und das mit möglichst einfachen Erklärungen, wäre echt super.
[/code]
Die Aufgabenstellung lautet wie folgt:
- ich habe 2 Arrays, eines für eine Matrix, eines für den dazugehörigen Vektor.
- Der Benutzer soll nun beliebige double-Werte eingeben, die dann in die Matrix und den Vektor eingeordnet werden sollen, als Beispiel wurde folgendes angegeben:
> java GaussElimination 1.9 2.36 3.13 4.8 5.2 6.74 7.94 8.11 9.9 10 11 12.7
1.9 2.36 3.13
5.2 6.74 7.94
9.9 10.0 11.0
4.8 8.11 12.7
Soweit is das ja schon ganz supi toll. Problem an der Sache, meine Programmiererfahrung beträgt 3 Wochen und die Aufgabe ist eindeutig zu schwer für mich.
Was ich bisher habe:
Code:
public class GaussElimination {
static double[][] matrix;
static double[] vector;
public static void main(String[] args) {
convertCoefficients(args);
}
public static void convertCoefficients(String[] args) {
double[] a;
a = new double[args.length];
// Anzahl der Eingabewerte
int n = 1;
for (int i = 0; i < args.length; i++) {
n++;
}
System.out.println("Anzahl der eingegeben Werte: " + n);
// Anzahl der Zeilen/Spalten in der Matrix
int a1 = 0;
int b = n - (a1 * a1);
for (int i = 0; i <= b; i++) {
b = n - (a1 * a1);
a1++;
}
System.out.println(b + " * " + b + " Matrix");
System.out.println("Zeilen insgesamt mit Vektor: " + a1);
double[][]matrix = new double[b][b];
double[]vector = new double[b];
}
}
Die System.out's habe ich nur mal für mich selber für Zwischenergebnisse eingefügt und da taucht auch schon ein tolles Problem auf...gebe ich 12 Werte ein werden 12 gezählt und eine 3 x 3 Matrix plus Vektor-Zeile erkannt. bei 20 Werten werden 20 gezählt und eine 4 x 4 Matrix plus Vektor erkannt. Soweit, so richtig...nur...gebe ich 6 Werte ein, werden nicht wie erwartet 6 gezählt mit einer 2 x 2 Matrix plus Vektor, nein...es werden 7 Werte gezählt und ich bekomme eine -2 x -2 Matrix.
Nicht, dass ich sowieso schon seit Tagen am verzweifeln bin, weil ich einfach nicht weiß, wie ich nun die Werte in die Arrays packen soll gibt mir dieses Problem nun den Rest.
Ich hoffe mir kann jemand helfen, und das mit möglichst einfachen Erklärungen, wäre echt super.