generated from freudenreichan/info2Praktikum-NeuronalesNetz
addMatrix Impelmentierung
This commit is contained in:
1 parent
e8eb227d44
commit
4a391e4319
1 file changed
+38
-5
+38
-5
@@ -50,8 +50,43 @@ MatrixType getMatrixAt(const Matrix matrix, unsigned int rowIdx, unsigned int co
|
||||
|
||||
Matrix add(const Matrix matrix1, const Matrix matrix2)
|
||||
{
|
||||
Matrix testHelp = {NULL, 0,0};
|
||||
return testHelp;
|
||||
|
||||
if(matrix1.rows == matrix2.rows && matrix1.cols == matrix2.cols){
|
||||
Matrix resultMatrix = createMatrix(matrix1.rows,matrix1.cols);
|
||||
for(int i = 0; i < matrix1.rows * matrix1.cols; i++){
|
||||
resultMatrix.buffer[i] = matrix1.buffer[i] + matrix2.buffer[i];
|
||||
}
|
||||
return resultMatrix;
|
||||
}else if(matrix1.rows == matrix2.rows && matrix1.cols == 1){ // Matrix1 ist Vektor
|
||||
Matrix resultMatrix = createMatrix(matrix1.rows,matrix2.cols);
|
||||
for(int i = 0; i < matrix2.cols; i++){
|
||||
for(int j = 0; j < matrix1.rows; j++){
|
||||
resultMatrix.buffer[i + j * matrix2.cols]= matrix2.buffer[i + j * matrix2.cols] + matrix1.buffer[j];
|
||||
}
|
||||
}
|
||||
return resultMatrix;
|
||||
}else if(matrix1.rows == matrix2.rows && matrix2.cols == 1){ // Matrix ist Vektor
|
||||
Matrix resultMatrix = createMatrix(matrix1.rows,matrix1.cols);
|
||||
for(int i = 0; i < matrix1.cols; i++){
|
||||
for(int j = 0; j < matrix1.rows; j++){
|
||||
resultMatrix.buffer[i + j * matrix1.cols]= matrix1.buffer[i + j * matrix1.cols] + matrix2.buffer[j];
|
||||
}
|
||||
}
|
||||
return resultMatrix;
|
||||
}else{
|
||||
Matrix emptyMatrix = {NULL,0,0};
|
||||
return emptyMatrix;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Matrix multiply(const Matrix matrix1, const Matrix matrix2)
|
||||
@@ -76,9 +111,7 @@ Matrix multiply(const Matrix matrix1, const Matrix matrix2)
|
||||
|
||||
return resultMatrix;
|
||||
}else{
|
||||
resultMatrix.buffer = NULL;
|
||||
resultMatrix.rows = 0;
|
||||
resultMatrix.cols = 0;
|
||||
clearMatrix(&resultMatrix);
|
||||
return resultMatrix;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user