From 2654733c2754b8fe7e2d3efe19d729eeb6419f39 Mon Sep 17 00:00:00 2001 From: Jakob Stornig Date: Thu, 21 Sep 2023 09:36:40 +0200 Subject: [PATCH] (feat) load_next_matrix --- matrix.c | 10 ++++++++++ matrix.h | 2 ++ 2 files changed, 12 insertions(+) diff --git a/matrix.c b/matrix.c index 4cb9ca7..be1a530 100644 --- a/matrix.c +++ b/matrix.c @@ -279,6 +279,14 @@ Matrix* matrix_load(char* file_string){ printf("Could not open \"%s\"", file_string); exit(1); } + Matrix * m = load_next_matrix(fptr); + fclose(fptr); + return m; + +} + +Matrix * load_next_matrix(FILE *fptr){ + char buffer[MAX_BYTES]; fgets(buffer, MAX_BYTES, fptr); @@ -321,6 +329,8 @@ Matrix* matrix_flatten(Matrix* matrix, int axis) { return result_matrix; } + + int matrix_argmax(Matrix* matrix) { // Expects a Mx1 matrix if (matrix->columns != 1){ diff --git a/matrix.h b/matrix.h index 1e88e47..cc80043 100644 --- a/matrix.h +++ b/matrix.h @@ -1,4 +1,5 @@ #pragma once +#include typedef struct { int rows, columns; @@ -15,6 +16,7 @@ void matrix_print(Matrix *matrix); Matrix* matrix_copy(Matrix *matrix); void matrix_save(Matrix* matrix, char* file_string); Matrix* matrix_load(char* file_string); +Matrix* load_next_matrix(FILE * fptr); void matrix_randomize(Matrix* matrix, int n); // don't understand the usage of the n int matrix_argmax(Matrix* matrix);