public PerceptronSimple(int numeroIteraciones, float rataAprendizaje, float errorMaximo, float[,] x, float[,] yd, IEntrenamiento form)
 {
     NumeroIteraciones = numeroIteraciones;
     RataAprendizaje   = rataAprendizaje;
     ErrorMaximo       = errorMaximo;
     X  = x;
     Yd = yd;
     formEntrenamiento = form;
 }
        private void guardar()
        {
            IEntrenamiento   entrenamiento    = this.formEntrenamiento;
            PerceptronSimple perceptronSimple = this;

            perceptronSimple.formEntrenamiento = null;

            string json = JsonConvert.SerializeObject(perceptronSimple);
            //obtenemos la carpeta y ejecutable de nuestra aplicación
            string rutaFichero = Environment.GetCommandLineArgs()[0];
            //obtenemos sólo la carpeta (quitamos el ejecutable)
            string carpeta = Path.GetDirectoryName(rutaFichero);

            //Montamos la carpeta y el fichero temporal con el
            //primer parámetro que es el código de solicitud
            rutaFichero = Path.Combine(carpeta, Nombre + ".json");
            try
            {
                //si no existe la carpeta temporal la creamos
                if (!(Directory.Exists(carpeta)))
                {
                    Directory.CreateDirectory(carpeta);
                }

                if (Directory.Exists(carpeta))
                {
                    //Creamos el fichero temporal y
                    //añadimos el texto pasado como parámetro
                    System.IO.StreamWriter ficheroTemporal =
                        new System.IO.StreamWriter(rutaFichero);
                    ficheroTemporal.WriteLine(json);
                    ficheroTemporal.Close();
                }
            }
            catch (Exception errorC)
            {
            }
            this.formEntrenamiento = entrenamiento;
        }