#include <stdio.h>
#include <stdlib.h>
#include "../data_libs/data_io.h"
#include "../data_module/data_process.h"
#include "../yet_another_decision_module/decision.h"
void sort(double *data, int n);
void swap(double *a, double *b);
int main(void) {
double *data = NULL;
int n;
printf("LOAD DATA...\n");
if (scanf("%d", &n) != 1 || n <= 0) {
printf("ERROR");
return 1;
}
data = malloc(n * sizeof(double));
if (data == NULL) {
printf("ERROR");
return 1;
}
input(data, n);
printf("RAW DATA:\n\t");
output(data, n);
printf("\nNORMALIZED DATA:\n\t");
if (normalization(data, n)) {
output(data, n);
printf("\nSORTED NORMALIZED DATA:\n\t");
sort(data, n);
output(data, n);
printf("\nFINAL DECISION:\n\t");
if (make_decision(data, n)) {
printf("YES");
} else {
printf("NO");
}
} else {
printf("ERROR");
}
free(data);
return 0;
}
void sort(double *data, int n) {
for (int i = 0; i < n - 1; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (data[j] > data[j + 1]) {
swap(data + j, data + j + 1);
}
}
}
}
void swap(double *a, double *b) {
double temp = *a;
*a = *b;
*b = temp;
}
CC = gcc
CFLAGS = -Wall -Wextra -Werror -std=c11
BUILD_DIR = ../../build
TARGET = $(BUILD_DIR)/Quest_3
SOURCES = main_executable_module.c \
../data_libs/data_io.c \
../data_libs/data_stat.c \
../data_module/data_process.c \
../yet_another_decision_module/decision.c
all: $(TARGET)
$(TARGET): $(SOURCES)
mkdir -p $(BUILD_DIR)
$(CC) $(CFLAGS) $(SOURCES) -o $(TARGET) -lm
clean:
rm -rf $(BUILD_DIR)
rebuild: clean all