0 fehler bei add abfangen

This commit is contained in:
Max-R 2025-11-25 10:15:52 +01:00
parent 801abc1b66
commit efa260ccbe

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);