Загрузка данных


#include <stdio.h>
#include <stdlib.h>
#include "../data_libs/data_io.h"
#include "data_process.h"

int main() {
    double *data;
    int n;
    int status = 0;
    if (scanf("%d", &n) != 1 || n <= 0) status = 1;

    data = (double *)malloc(n * sizeof(double));
    if (data == NULL) {
        status = 1;
        printf("n/a");
    } else {
        input(data, n);

        if (normalization(data, n))
            output(data, n);
        else
            printf("ERROR");
    }
    free(data);
    return status;
}

#include "data_process.h"
#include <math.h>
#include "../data_libs/data_stat.h"

int normalization(double *data, int n) {
    int result = 1;
    double max_value = max(data, n);
    double min_value = min(data, n);
    double size = max_value - min_value;

    if (fabs(size) > EPS) {
        for (int i = 0; i < n; i++) {
            data[i] = data[i] / size - min_value / size;
        }
    } else {
        result = 0;
    }

    return result;
}
#ifndef PROCESSING_H
#define PROCESSING_H

#define EPS 1E-6

int normalization(double *data, int n);

#endif

gcc data_module/data_module_entry.c data_module/data_process.c data_libs/data_io.c data_libs/data_stat.c -lm