Skip to content
Snippets Groups Projects
Select Git revision
  • 5a418a40e3e19d4f4c1bd1f9430c0bdeb7c85579
  • main default protected
2 results

matrix_compute.c

Blame
  • user avatar
    Florian Burgener authored
    5a418a40
    History
    matrix_compute.c 1.52 KiB
    /**
     * @file matrix_compute.c
     * @author Florian Burgener
     * @brief Démonstration de libraire matrix.
     * @version 1.0
     * @date 2021-11-16
     *
     * @copyright Copyright (c) 2021
     *
     */
    
    #include <math.h>
    #include <stdint.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    
    #include "matrix.h"
    
    int main() {
        matrix mat;
        matrix_init(&mat, 3, 4, 100);
        printf("%d\n", mat.m);
        printf("%d\n", mat.n);
        matrix_print(mat);
        printf("***\n");
    
        matrix mat2;
        int32_t values[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};
        matrix_init_from_array(&mat2, 3, 4, values, 12);
        matrix_print(mat2);
        printf("****\n");
    
        matrix mat3;
        matrix_clone(&mat3, mat2);
        matrix_print(mat3);
        printf("*****\n");
    
        matrix mat4;
        matrix_transpose(&mat4, mat2);
        matrix_print(mat4);
        printf("******\n");
    
        matrix mat7;
        matrix_extract_submatrix(&mat7, mat4, 1, 3, 1, 2);
        matrix_print(mat7);
        printf("*******\n");
    
        int32_t value;
        matrix_get(&value, mat4, 1, 2);
        printf("%d\n", value);
        printf("********\n");
    
        matrix_set(mat4, 1, 2, 1000);
        matrix_print(mat4);
        printf("*********\n");
    
        matrix mat5;
        matrix_init(&mat5, 3, 4, 10);
        matrix mat6;
        matrix_init(&mat6, 3, 4, 10);
        bool is_equal = matrix_is_equal(mat5, mat6);
        printf("%d\n", is_equal);
    
        matrix_destroy(&mat);
        matrix_destroy(&mat2);
        matrix_destroy(&mat3);
        matrix_destroy(&mat4);
        matrix_destroy(&mat5);
        matrix_destroy(&mat6);
        matrix_destroy(&mat7);
    
        return EXIT_SUCCESS;
    }