public bool IsFirstFuncion(Monomios MONO, AFuns FuncionIndagada) { foreach (var item in MONO.Elementos) { if (item.Base.StartsWith($"{FuncionIndagada.Simbolo}")) { return(true); } } return(false); }
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(); }
//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); }
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); } }