Add 8 3 math is very wrong, programming works
This commit is contained in:
parent
3831badb99
commit
1cefc38b78
@ -17,7 +17,9 @@ Dateien wie Bilder die zur Lösung einer Aufgabe gehören sind in <br><ins>Medie
|
||||
- Damenproblem: VL 5 Aufgabe 2
|
||||
<br>Nicht die gewünschte rekursive Backtracking-Implementierung
|
||||
|
||||
|
||||
|
||||
- Keine
|
||||
## Notizen
|
||||
- part8 aufg3 matrix.multiplyMatrix is mathematically completely wrong
|
||||
## Fragen
|
||||
- Was können die in Interfaces definierten Variablen?
|
90
src/part8/aufg3/matrix.java
Normal file
90
src/part8/aufg3/matrix.java
Normal file
@ -0,0 +1,90 @@
|
||||
package part8.aufg3;
|
||||
|
||||
public class matrix {
|
||||
private int rows;
|
||||
private int cols;
|
||||
int[][] field;
|
||||
|
||||
matrix(int rows, int cols){
|
||||
this.rows = rows;
|
||||
this.cols = cols;
|
||||
|
||||
field = new int[rows][cols];
|
||||
}
|
||||
|
||||
public int getCols() {
|
||||
return cols;
|
||||
}
|
||||
|
||||
public int getRows() {
|
||||
return rows;
|
||||
}
|
||||
|
||||
void print(){
|
||||
for (int i=0; i<this.rows; i++){
|
||||
for (int j=0; j<this.cols; j++){
|
||||
System.out.print(field[i][j]);
|
||||
if (j != this.cols-1) {
|
||||
System.out.print(" ; ");
|
||||
}
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
System.out.println("===========");
|
||||
}
|
||||
|
||||
void setValue(int row, int col, int value){field[row][col] = value;}
|
||||
|
||||
int getValue(int row, int col){return field[row][col];}
|
||||
|
||||
void scalarMultiply(int factor){
|
||||
for (int i=0; i<this.rows; i++) {
|
||||
for (int j = 0; j < this.cols; j++) {
|
||||
field[i][j] *= factor;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void addMatrix(matrix matrix2){
|
||||
for (int i=0; i<this.rows; i++) {
|
||||
for (int j = 0; j < this.cols; j++) {
|
||||
field[i][j] += matrix2.field[i][j];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
boolean multiplyMatrix(matrix matrix2){
|
||||
boolean compatible = false;
|
||||
|
||||
if(this.getRows() == matrix2.getCols()){
|
||||
compatible = true;
|
||||
matrix result = new matrix(this.getRows(), matrix2.getCols());
|
||||
|
||||
|
||||
result.print();
|
||||
}
|
||||
|
||||
return compatible;
|
||||
}
|
||||
|
||||
public static void main(String[] args){
|
||||
matrix nr1 = new matrix(2,3);
|
||||
matrix nr2 = new matrix(2,3);
|
||||
|
||||
nr1.setValue(1,1,1);
|
||||
nr2.setValue(0,0,4);
|
||||
|
||||
nr2.addMatrix(nr1);
|
||||
nr2.print();
|
||||
|
||||
nr2.scalarMultiply(8);
|
||||
nr2.print();
|
||||
|
||||
nr2.scalarMultiply(7);
|
||||
nr2.print();
|
||||
|
||||
matrix nr3 = new matrix(7,4);
|
||||
matrix nr4 = new matrix(6,7);
|
||||
System.out.println(nr3.multiplyMatrix(nr4));
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user