0 fehler bei add abfangen

This commit is contained in:
Max-R
2025-11-25 10:15:52 +01:00
parent 801abc1b66
commit efa260ccbe
+15
View File
@@ -86,6 +86,9 @@ Matrix add(const Matrix matrix1, const Matrix matrix2) {
// Matrix // Matrix
if (rowsEqual == 1 && colsEqual == 1){ if (rowsEqual == 1 && colsEqual == 1){
Matrix result = createMatrix(matrix1.rows, matrix1.cols); Matrix result = createMatrix(matrix1.rows, matrix1.cols);
if (result.buffer == NULL){
return (Matrix){0,0,NULL};
}
for (int i = 0; i< rows1; i++) { for (int i = 0; i< rows1; i++) {
for (int j= 0; j< cols1; j++){ for (int j= 0; j< cols1; j++){
int valueM1= getMatrixAt(matrix1, i, j); int valueM1= getMatrixAt(matrix1, i, j);
@@ -101,6 +104,9 @@ Matrix add(const Matrix matrix1, const Matrix matrix2) {
Matrix newMatrix = broadcastingCols(matrix1, cols2); Matrix newMatrix = broadcastingCols(matrix1, cols2);
//add //add
Matrix result = createMatrix(newMatrix.rows, newMatrix.cols); Matrix result = createMatrix(newMatrix.rows, newMatrix.cols);
if (result.buffer == NULL){
return (Matrix){0,0,NULL};
}
for (int i = 0; i< rows1; i++) { for (int i = 0; i< rows1; i++) {
for (int j= 0; j< cols2; j++){ for (int j= 0; j< cols2; j++){
int valueM1= getMatrixAt(newMatrix, i, j); int valueM1= getMatrixAt(newMatrix, i, j);
@@ -115,6 +121,9 @@ Matrix add(const Matrix matrix1, const Matrix matrix2) {
Matrix newMatrix2 = broadcastingCols(matrix2, cols1); Matrix newMatrix2 = broadcastingCols(matrix2, cols1);
//add //add
Matrix result = createMatrix(newMatrix2.rows, newMatrix2.cols); Matrix result = createMatrix(newMatrix2.rows, newMatrix2.cols);
if (result.buffer == NULL){
return (Matrix){0,0,NULL};
}
for (int i = 0; i< rows1; i++) { for (int i = 0; i< rows1; i++) {
for (int j= 0; j< cols1; j++){ for (int j= 0; j< cols1; j++){
int valueM1= getMatrixAt(matrix1, i, j); int valueM1= getMatrixAt(matrix1, i, j);
@@ -132,6 +141,9 @@ Matrix add(const Matrix matrix1, const Matrix matrix2) {
Matrix newMatrix = broadcastingRows(matrix1, rows2); Matrix newMatrix = broadcastingRows(matrix1, rows2);
//add //add
Matrix result = createMatrix(newMatrix.rows, newMatrix.cols); Matrix result = createMatrix(newMatrix.rows, newMatrix.cols);
if (result.buffer == NULL){
return (Matrix){0,0,NULL};
}
for (int i = 0; i< rows2; i++) { for (int i = 0; i< rows2; i++) {
for (int j= 0; j< cols1; j++){ for (int j= 0; j< cols1; j++){
int valueM1= getMatrixAt(newMatrix, i, j); int valueM1= getMatrixAt(newMatrix, i, j);
@@ -146,6 +158,9 @@ Matrix add(const Matrix matrix1, const Matrix matrix2) {
Matrix newMatrix2 = broadcastingRows(matrix2, rows1); Matrix newMatrix2 = broadcastingRows(matrix2, rows1);
//add //add
Matrix result = createMatrix(newMatrix2.rows, newMatrix2.cols); Matrix result = createMatrix(newMatrix2.rows, newMatrix2.cols);
if (result.buffer == NULL){
return (Matrix){0,0,NULL};
}
for (int i = 0; i< rows1; i++) { for (int i = 0; i< rows1; i++) {
for (int j= 0; j< cols1; j++){ for (int j= 0; j< cols1; j++){
int valueM1= getMatrixAt(matrix1, i, j); int valueM1= getMatrixAt(matrix1, i, j);