#include "genetico.h"
#include <stdlib.h>
#include <stdio.h>

void cargar_datos(double **inputs, double **outputs)
{

    int i,j;

    FILE *fentradas, *fsalidas;

    fentradas=fopen("entradas.txt","r");
    fsalidas=fopen("salidas.txt","r");

    for(i=0;i<CANTIDAD_M;i++)
    {
        for(j=0;j<CANTIDAD_N;j++)
        {
            fscanf(fentradas,"%lf",&inputs[j][i]);
        }
    }
    for(i=0;i<CANTIDAD_S;i++)
    {
        for(j=0;j<CANTIDAD_N;j++)
        {
            fscanf(fsalidas,"%lf",&outputs[j][i]);
        }
    }
    fclose(fentradas);
    fclose(fsalidas);

    //return;
}

double* generar_vector_double (unsigned int m, unsigned int s, unsigned int n, unsigned int max) {
    //clock_t ticks;
    //time_t seconds;

FILE *fentradas,*fsalidas;

    double *matriz, *matriz2;
    int i = 0, j = 0, k=0;
    fentradas=fopen("entradas.txt","r");
    fsalidas=fopen("salidas.txt","r");
    double *auxiliar,*auxiliar2;




    auxiliar = (double*)malloc((m*n)*sizeof(double));
    auxiliar2 = (double*)malloc((s*n)*sizeof(double));
    //Reserva de memoria
    matriz = (double*)malloc(m*n*sizeof(double));
    matriz2 = (double*)malloc(s*n*sizeof(double));
    //m filas y n columnas
    for(i=0;i<m;i++){
        for(j=0;j<n;j++){
            fscanf(fentradas,"%lf",&matriz[(i*n)+j]);
            //printf("\n MATRIZ [%d] = %f",(i*n)+j,matriz[(i*n)+j]);
        }
    }
    for(i=0;i<s;i++){
        for(j=0;j<n;j++){
            fscanf(fsalidas,"%lf",&matriz2[(i*n)+j]);
            //printf("\n MATRIZ2 [%d] = %f",(i*n)+j,matriz2[(i*n)+j]);
        }
    }
    //system("pause");
    //matriz[(i*n)+j]=(double)auxiliar[(i*n)+j];
    fclose(fentradas);
    fclose(fsalidas);
    if (max==1){
    return matriz;
    }
    if (max==2){
    return matriz2;
    }
    return matriz;
}
