private void generarFunciones()
 {
     funcionLineal      = new Funcion_Lineal();
     funcionCuadratica  = new Funcion_Cuadratica();
     funcionExponencial = new Funcion_Exponencial();
     funcionPotencial   = new Funcion_Potencial();
     funcionHiperbolica = new Funcion_Hiperbolica();
 }
        private void Form_Comparacion_De_Aproximaciones_Load(object sender, EventArgs e)
        {
            double x;
            double y;
            double yLineal;
            double yCuadratica;
            double yExponencial;
            double yPotencial;
            double yHiperbola;
            double errorCuadraticoLineal;
            double errorCuadraticoCuadratica;
            double errorCuadraticoExponencial;
            double errorCuadraticoPotencial;
            double errorCuadraticoHiperbola;

            int cantidadDePuntos    = Form_Inicio_Ingresa_Datos.cantidadDePuntos;
            int cantidadDeDecimales = Form_Inicio_Ingresa_Datos.cantidadDeDecimales;

            double[,] puntos = Form_Inicio_Ingresa_Datos.puntos;
            Funcion_Lineal      funcionLineal      = Form_Inicio_Ingresa_Datos.funcionLineal;
            Funcion_Cuadratica  funcionCuadratica  = Form_Inicio_Ingresa_Datos.funcionCuadratica;
            Funcion_Potencial   funcionPotencial   = Form_Inicio_Ingresa_Datos.funcionPotencial;
            Funcion_Hiperbolica funcionHiperbolica = Form_Inicio_Ingresa_Datos.funcionHiperbolica;
            Funcion_Exponencial funcionExponencial = Form_Inicio_Ingresa_Datos.funcionExponencial;

            for (int i = 0; i < cantidadDePuntos; i++)
            {
                x = puntos[i, 0];
                y = puntos[i, 1];

                yLineal      = Math.Round((funcionLineal.getCoeficienteA() * x) + funcionLineal.getCoeficienteB(), cantidadDeDecimales);
                yCuadratica  = Math.Round((funcionCuadratica.getCoeficienteA() * x * x) + (funcionCuadratica.getCoeficienteB() * x) + funcionCuadratica.getCoeficienteC(), cantidadDeDecimales);
                yExponencial = Math.Round(funcionExponencial.getCoeficienteB() * Math.Exp(funcionExponencial.getCoeficienteA() * x), cantidadDeDecimales);
                yPotencial   = Math.Round(funcionPotencial.getCoeficienteB() * Math.Pow(x, funcionPotencial.getCoeficienteA()), cantidadDeDecimales);
                yHiperbola   = Math.Round(funcionHiperbolica.getCoeficienteA() / (x + funcionHiperbolica.getCoeficienteB()), cantidadDeDecimales);

                errorCuadraticoLineal      = Math.Round(Math.Pow(yLineal - y, 2));
                errorCuadraticoCuadratica  = Math.Round(Math.Pow(yCuadratica - y, 2));
                errorCuadraticoExponencial = Math.Round(Math.Pow(yExponencial - y, 2));
                errorCuadraticoPotencial   = Math.Round(Math.Pow(yPotencial - y, 2));
                errorCuadraticoHiperbola   = Math.Round(Math.Pow(yHiperbola - y, 2));

                sumatoriaErrorCuadraticoLineal      = Math.Round(sumatoriaErrorCuadraticoLineal + errorCuadraticoLineal, cantidadDeDecimales);
                sumatoriaErrorCuadraticoCuadratica  = Math.Round(sumatoriaErrorCuadraticoCuadratica + errorCuadraticoCuadratica, cantidadDeDecimales);
                sumatoriaErrorCuadraticoHiperbola   = Math.Round(sumatoriaErrorCuadraticoHiperbola + errorCuadraticoHiperbola, cantidadDeDecimales);
                sumatoriaErrorCuadraticoPotencial   = Math.Round(sumatoriaErrorCuadraticoPotencial + errorCuadraticoPotencial, cantidadDeDecimales);
                sumatoriaErrorCuadraticoExponencial = Math.Round(sumatoriaErrorCuadraticoExponencial + errorCuadraticoExponencial, cantidadDeDecimales);

                dgvComparacion.Rows.Add(i + 1, x, y, yLineal, yCuadratica, yHiperbola, yPotencial, yExponencial,
                                        errorCuadraticoLineal, errorCuadraticoCuadratica, errorCuadraticoHiperbola,
                                        errorCuadraticoPotencial, errorCuadraticoExponencial);
            }
            dgvComparacion.Rows.Add("Total", "", "", "", "", "", "", "",
                                    sumatoriaErrorCuadraticoLineal, sumatoriaErrorCuadraticoCuadratica,
                                    sumatoriaErrorCuadraticoHiperbola, sumatoriaErrorCuadraticoPotencial,
                                    sumatoriaErrorCuadraticoExponencial);
        }