From 33874d69d46df15faa13c039b1c329b12949b039 Mon Sep 17 00:00:00 2001 From: Jasper Date: Mon, 1 Sep 2025 08:57:20 +0200 Subject: Tolerance check of absolute value in 'matrix_eq' --- matrix.c | 2 +- utils.h | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/matrix.c b/matrix.c index 46302f7..1e1a4dd 100644 --- a/matrix.c +++ b/matrix.c @@ -247,7 +247,7 @@ int matrix_eq(const Matrix *A, const Matrix *B, const double tol) for (size_t i = 0; i < A->m; ++i) { for (size_t j = 0; j < A->n; ++j) - if (matrix_at(A, i, j) - matrix_at(B, i, j) > tol) return FALSE; + if (ABS(matrix_at(A, i, j) - matrix_at(B, i, j)) > tol) return FALSE; } return TRUE; } diff --git a/utils.h b/utils.h index 8503c1b..8aecde3 100644 --- a/utils.h +++ b/utils.h @@ -1,6 +1,8 @@ #ifndef UTIL_H #define UTIL_H +#define ABS(x) ((x) >= 0 ? (x) : -(x)) + char *str_delete_at(const char *str, const int pos); size_t str_count_occ(const char *str, const char ch); -- cgit v1.2.3