示例#1
0
        public bool IsFirstFuncion(Monomios MONO, AFuns FuncionIndagada)
        {
            foreach (var item in MONO.Elementos)
            {
                if (item.Base.StartsWith($"{FuncionIndagada.Simbolo}"))
                {
                    return(true);
                }
            }

            return(false);
        }
示例#2
0
        private static void TEST_Consola_Monomio()
        {
            string Entrada = "x^{2*1}*x*2*ln<x*3>";

            Entrada = "sen<e^{x}>";
            Monomios MONO = new Monomios(Entrada);

            Console.WriteLine(MONO.Nombre);
            Console.WriteLine($"ENTRADA = {Entrada}");
            Console.WriteLine("CONTENIDO   " + MONO.Contenido);
            Console.WriteLine("COEFICIENTE " + MONO.Coeficiente);
            Console.WriteLine("LITERAL     " + MONO.ParteLiteral);
            Console.WriteLine($"RESULTADO  {MONO.Result}");
            Console.WriteLine("-----------------------------------");
            Console.ReadKey();
        }
示例#3
0
        //IMPLEMENTAR PROCESOD DE ENFOCAR FUNCION DONDE LA VARIABLE ESTÉ ENFOCADA
        private string Enruta(Monomios MONO, Variables Var)
        {
            //TENGO QUE SABER CUAL FUNCION ES LA MAS EXTERIOR Y PREGUNTAR POR ESA
            //SI ANIDO CS<SEN<X>> POR ORDEN LO TOMA COMO SI LA FUNCION FUERA UN SENO CUANDO EN REALIZAD ES UN COSENO

            Interino = new Senos();

            if (Interino.ContainsThisFuntion(MONO) & DProceso.IsFirstFuncion(MONO, Interino))
            {
                return(new Derivadas(new Senos(MONO.Result), Var).Result);
            }


            Interino = new Cosenos();
            if (Interino.ContainsThisFuntion(MONO) & DProceso.IsFirstFuncion(MONO, Interino))
            {
                return(new Derivadas(new Cosenos(MONO.Result), Var).Result);
            }


            Interino = new Tangentes();
            if (Interino.ContainsThisFuntion(MONO) & DProceso.IsFirstFuncion(MONO, Interino))
            {
                return(new Derivadas(new Tangentes(MONO.Result), Var).Result);
            }


            Interino = new Eulers();
            if (Interino.ContainsThisFuntion(MONO) & DProceso.IsFirstFuncion(MONO, Interino))
            {
                return(new Derivadas(new Eulers(MONO.Result), Var).Result);
            }


            Interino = new LogNaturales();
            if (Interino.ContainsThisFuntion(MONO) & DProceso.IsFirstFuncion(MONO, Interino))
            {
                return(new Derivadas(new LogNaturales(MONO.Result), Var).Result);
            }


            return(new Derivadas(MONO, Var).Result);
        }
示例#4
0
        public Derivadas(Monomios MONO, Variables Var)
        {
            if (!MONO.Result.Contains(Var.Nombre))
            {
                Result = "0";
            }
            else
            {
                List <string> DerivadasIndividuales = new List <string>();

                foreach (var item in MONO.Elementos)
                {
                    if (!item.Result.Contains(Var.Nombre))
                    {
                        DerivadasIndividuales.Add(item.Result);
                    }
                    else
                    {
                        //PULIR BIEN SUMAS PARA QUE RETORNE LO NECESARIO POR ESTA CLASE
                        string NewExponente   = new SumaEntera(item.Exponente, "-1").Result;
                        string NewCoeficiente = item.Exponente;
                        string NewPotencia    = new PotenciaEntera(item.Base, NewExponente).Result;

                        DerivadaInterna = new ProductoEntero(NewCoeficiente, NewPotencia).Result;
                        DerivadasIndividuales.Add(DerivadaInterna);
                    }
                }

                Result = "1";
                foreach (var item in DerivadasIndividuales)
                {
                    Result = new ProductoEntero(Result, item).Result;
                }

                //Result = OperarSignos(Result);
            }
        }