Ejemplo n.º 1
0
        public Derivadas(Tangentes TAN, Variables Var)
        {
            string Res;

            if (TAN.Argumento.Contains(Var.Nombre))
            {
                Polinomio       = new Polinomios(TAN.Argumento);
                DerivadaInterna = new Derivadas(Polinomio, Var).Result;
                Operacion       = new PotenciaEntera(TAN.Simbolo, "2");
                //REVISAR SI TOCA DESCORCHAR CORCHETES DE LA BASE DE LA POTENCIA
                string Temporal = EProceso.CorchetesClear(Operacion.Result);
                Res       = Temporal + TAN.Op + TAN.Argumento + TAN.Cl;
                Operacion = new CocienteEntero("1", Res);
                Res       = Operacion.Result;

                Operacion = new ProductoEntero(TAN.Coeficiente, DerivadaInterna.ToString());
                Operacion = new ProductoEntero(Operacion.Result, Res);
                Result    = Operacion.Result;
                //Result = $"{DerivadaInterna.ToString()}{new ProductoEntero().Simbolo}{Res}"; PAUSADO PARA EXPERIMENTAR SI SE CORRIGIO EL BUG
            }
            else
            {
                Result = $"{Modulo}";
            }
        }
Ejemplo n.º 2
0
        private static void TEST_BLL()
        {
            string Entrada = "x^{2}+sen<x>";

            Console.WriteLine($"Entrada {Entrada}");
            Console.WriteLine($"Proceso Derivar");
            Polinomios POL = new Polinomios(Entrada);
            Service    BLL = new Service();

            BLL.Procesar(Entrada, BLL.ObtenerVariable(Entrada).ElementAt(0).Nombre, "Derivar");
            Console.WriteLine(BLL.Resultado.Contenido);
            Console.WriteLine("------------------------------------------");
            Console.ReadKey();
        }
Ejemplo n.º 3
0
        private static void TEST_Console_POLINOMIO_Derivada()
        {
            string Entrada = "x^2+2*x+e^{3*6}+ln<1+x>+cos<3*x>";

            Entrada = "cos<sen<e^{x}>>";
            //Entrada = "sen<e^{x}>";
            Polinomios POLI = new Polinomios(Entrada);
            Derivadas  DER  = new Derivadas(POLI, new Variables("x"));

            Console.WriteLine($"ENTRADA          {POLI.Result}");
            Console.WriteLine($"DERIVADA         {DER.Result}");
            Console.WriteLine("--------------------------------------");
            Console.ReadKey();
        }
Ejemplo n.º 4
0
        private static void TEST_Consola_Polinomio()
        {
            string Entrada = "e^{2*x}+x^2+x*2+e^{1+x}+sen<1+w>+ln<cos<x>>";
            //Entrada = "e^{2*x}";
            Polinomios POLI = new Polinomios(Entrada);

            Console.WriteLine(POLI.Nombre);
            Console.WriteLine($"ENTRADA = {Entrada}");
            Console.WriteLine("CONTENIDO   " + POLI.Contenido);
            Console.WriteLine("GRADO ABS   " + POLI.GradoAbs);
            Console.WriteLine(POLI.Result);
            Console.WriteLine("-----------------------------------");
            Console.ReadKey();
        }
Ejemplo n.º 5
0
        public Derivadas(Eulers EUL, Variables Var)
        {
            if (EUL.Argumento.Contains(Var.Nombre))
            {
                Polinomio       = new Polinomios(EUL.Argumento);
                DerivadaInterna = new Derivadas(Polinomio, Var).Result;

                Operacion = new ProductoEntero(EUL.Coeficiente, DerivadaInterna.ToString());
                Operacion = new ProductoEntero(Operacion.Result, EUL.Result);
                Result    = Operacion.Result;
            }
            else
            {
                Result = $"{Modulo}";
            }
        }
Ejemplo n.º 6
0
        //HACER QUE ESTA DERIVADA AUTO DETECTE DERIVADAS INTERNAS DIFERENETS DE POLINOMICAS Y LAS EJECUTE
        public Derivadas(Polinomios POL, Variables Var)
        {
            Result = "0";

            foreach (var MONO in POL.Elementos)
            {
                DerivadaInterna = Enruta(MONO, Var);

                //PULIR BIEN CLASE SUMAS PARA QUE DEVUELVA LO REQUERIDO POR ESTA CLASE
                if (!DerivadaInterna.Equals("0"))
                {
                    Result = new SumaEntera(Result, DerivadaInterna).Result;
                }
            }

            Result = Result.Trim(POL.Simbolo);
            Result = OperarSignos(Result);
        }
Ejemplo n.º 7
0
        public Derivadas(Senos SENO, Variables Var)
        {
            if (SENO.Argumento.Contains(Var.Nombre))
            {
                Interino = new Cosenos();
                Interino.SetArgumento(SENO.Argumento);
                Polinomio       = new Polinomios(SENO.Argumento);
                DerivadaInterna = new Derivadas(Polinomio, Var).Result;

                Operacion = new ProductoEntero(SENO.Coeficiente, DerivadaInterna.ToString());
                Operacion = new ProductoEntero(Operacion.Result, Interino.Result);

                Result = Operacion.Result;
            }
            else
            {
                Result = $"{Modulo}";
            }
        }
Ejemplo n.º 8
0
        public Derivadas(LogNaturales LN, Variables Var)
        {
            if (LN.Argumento.Contains(Var.Nombre))
            {
                Polinomio       = new Polinomios(LN.Argumento);
                DerivadaInterna = new Derivadas(Polinomio, Var).Result;

                Operacion = new ProductoEntero(LN.Coeficiente, DerivadaInterna.ToString());
                Operacion = new CocienteEntero(Operacion.Result, LN.Argumento);
                Result    = Operacion.Result;

                if (!EProceso.IsAgrupate(Result))
                {
                    Result = EProceso.EncorcharFuncion(Result);
                }
            }
            else
            {
                Result = $"{Modulo}";
            }
        }
Ejemplo n.º 9
0
 private string CoordenadasResultantes(Polinomios Polinomio, Variables Var)
 {
     return(null);
 }
Ejemplo n.º 10
0
        //FIN MANEJO DE DATOS

        public string Procesar(string Expresion, string NombreVariable, string Operacion)
        {
            //IDENTIFICAR OPERACIONES A REALIZAR E IR ALMACENANDO PASOS (CUANDO AL INGRESAR POR UNA FUNCION RETORNE ALGO DIFERENTE AL INCICIAL
            Variables Var = new Variables(NombreVariable);

            Conexion.Open();
            Funcion_id   = DAL.SiguienteFuncion();
            Resultado_id = DAL.SiguienteResultado();
            Conexion.Close();

            LPasos    = new List <Pasos>();
            Entrada   = Expresion;
            Polinomio = new Polinomios(Entrada);
            CrearFuncion(Funcion_id, Polinomio.Nombre, Expresion);

            RegistrarPaso(Entrada, Polinomio.Result, Polinomio.Nombre);

            if (Operacion.Contains("Der"))
            {
                Derivada = new Derivadas(Polinomio, Var);

                RegistrarPaso(Polinomio.Result, Derivada.Result, Derivada.Nombre);

                Salida = Derivada.Result;
                CrearResultado(Resultado_id, Derivada.Nombre, Derivada.Result, Estado);
                //SE DEFINE EL RESULTADO
            }
            else if (Operacion.Contains("Simp"))
            {
                string Temp = "";
                foreach (var mono in Polinomio.Elementos)
                {
                    Op = new ProductoEntero(mono.Result);
                    if (!Op.Result.Equals(mono.Result))
                    {
                        CrearResultado(Resultado_id, Op.Nombre, Op.Result, Estado);

                        RegistrarPaso(mono.Result, Op.Result, Op.Nombre);
                    }
                    Temp = Op.Result;

                    Op = new PotenciaEntera(Op.Result);
                    if (!Op.Equals(Temp))
                    {
                        CrearResultado(Resultado_id, Op.Nombre, Op.Result, Estado);

                        RegistrarPaso(mono.Result, Op.Result, Op.Nombre);
                    }
                    Temp = Op.Result;

                    Op = new CocienteEntero(Op.Result);
                    if (!Op.Equals(Temp))
                    {
                        CrearResultado(Resultado_id, Op.Nombre, Op.Result, Estado);

                        RegistrarPaso(mono.Result, Op.Result, Op.Nombre);
                    }
                    Temp = "";
                }
                //SE DEFINE EL RESULTADO
            }

            //LISTOS ELEMENTOS NECESARIOS PARA GUARDAR REGISTROS
            return(Resultado.Contenido);
        }