Título: [ACTUALIZADO FUNCIONAL]Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 30 Marzo 2010, 10:42 am Hola a todos, tengo ya casi acabado el analizador de expresiones numéricas, le introduces una expresion aritmetica con variables inclusive, la analiza y resuelve, pero aun tiene un error que no he conseguido solucionar, os dejo el codigo y el error:
Código Y aqui la salida de la ejecucion del programita en cuestion: OUT: Ya depurado el programa hace su funcion especial solo tiene un pequeño fallo que no soy capaz de ver: Citar Estos son los 2 operandos que hay en la expresion: Ese seria el desarrollo de la expresión 2*x+b[*,+] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 2 variables o incognitas de la expresion: [x,b] Dame un valor para la variable x : 5*3 Estos son los 3 operandos que hay en la expresion: [*,+,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 2 variables o incognitas de la expresion: [x,b] Dame un valor para la variable b : 6*x Estos son los 4 operandos que hay en la expresion: [*,+,*,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 3 variables o incognitas de la expresion: [x,b,x] Dame un valor para la variable x : 15 Estos son los 4 operandos que hay en la expresion: [*,+,*,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 3 variables o incognitas de la expresion: [x,b,x] 120 El problema es que cuando cuando un valor para una variable, si introduzco otra expresion que tenga otra variable y no es una de las que estaban en la principal no funciona, aqui os dejo para que lo veais con vuestros propios ojos: Citar Estos son los 2 operandos que hay en la expresion: [*,+] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 2 variables o incognitas de la expresion: [x,b] Dame un valor para la variable x : 5*x Estos son los 3 operandos que hay en la expresion: [*,+,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 3 variables o incognitas de la expresion: [x,b,x] Dame un valor para la variable x : 7 Estos son los 3 operandos que hay en la expresion: [*,+,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 3 variables o incognitas de la expresion: [x,b,x] Dame un valor para la variable b : 6*d <----- Aqui introduzco una nueva variable, que teoricamente tendria que analizar y pedir un valor para esta Estos son los 4 operandos que hay en la expresion: [*,+,*,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 4 variables o incognitas de la expresion: [x,b,x,d] Dame un valor para la variable x : <-------Sin embargo pide para X y no para d que es la que he pedido y como se aprecia abajo no tiene valor para d puesto que no ha pedido para esta, si no para X 1 Exception in thread "main" java.lang.RuntimeException: no value for variable "d" at net.java.dev.eval.Operation.evaluateOperand(Operation.java:128) at net.java.dev.eval.Operation.eval(Operation.java:107) at net.java.dev.eval.Expression.eval(Expression.java:161) at main.principal.Procesador(principal.java:123) at main.principal.Procesador(principal.java:118) at main.principal.main(principal.java:26) Estos son los 4 operandos que hay en la expresion: [*,+,*,*] /////////////////////////////////////////////////////////////////////////////// ############################################################################### /////////////////////////////////////////////////////////////////////////////// Y aqui estan las 4 variables o incognitas de la expresion: [x,b,x,d] Haber si me pueden ayudar con este ultimo problema. Saludos Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: Blitzkrieg' en 30 Marzo 2010, 15:53 pm Excelente aporte, gracias :rolleyes:
Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 30 Marzo 2010, 20:24 pm Gracias, haber si alguien me ayuda con el error.
Saludos Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: Leyer en 30 Marzo 2010, 20:33 pm no entendi,para que pides la variables ? y esto qui lo modifico y no salta error
new String("5*49/2*a"); y cuando pide variables es a,A,B Un Saludo. Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 30 Marzo 2010, 21:31 pm no entendi,para que pides la variables ? y esto qui lo modifico y no salta error Pido variables para poder completar la expresion.new String("5*49/2*a"); y cuando pide variables es a,A,B Un Saludo. Lo de las variables aab lo solucione haciendo saltos en el bucle de dos en dos envezde uno en uno. El problema es que no se porque ese error, no le veo sentido. Saludos Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: 1mpuls0 en 30 Marzo 2010, 23:37 pm Estas en tiempo de clases o para que haces este code??
Amm yo hice un Evaluador de Expresiones Aritmeticas hace tiempo, bueno como un año, tiene su analizador lexico y gramatico y despues convertia las operaciones a lenguaje ensamblador. Y te preguntaba si era un trabajo de la escuela me imagino que es para ayer :xD pero si es por hacer algo puedes hacer tu propio Analizador Lexico y Gramatical Aqui el Analizador de Expresiones Aritmeticas que hice sin librerias mas que el substance :P Y de tu code aun no he revisado nada, mas tarde me doy una vuelta http://laquetegustaati.com.mx/D929/Analizador.rar Saludos Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: Blitzkrieg' en 31 Marzo 2010, 04:55 am Estas en tiempo de clases o para que haces este code?? Amm yo hice un Evaluador de Expresiones Aritmeticas hace tiempo, bueno como un año, tiene su analizador lexico y gramatico y despues convertia las operaciones a lenguaje ensamblador. Y te preguntaba si era un trabajo de la escuela me imagino que es para ayer :xD pero si es por hacer algo puedes hacer tu propio Analizador Lexico y Gramatical Aqui el Analizador de Expresiones Aritmeticas que hice sin librerias mas que el substance :P Y de tu code aun no he revisado nada, mas tarde me doy una vuelta http://laquetegustaati.com.mx/D929/Analizador.rar Saludos Esta super, no nos podrias regalar el code? Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 31 Marzo 2010, 08:13 am Estas en tiempo de clases o para que haces este code?? LO hago por placer si no he cumplido los 16 aun xDAmm yo hice un Evaluador de Expresiones Aritmeticas hace tiempo, bueno como un año, tiene su analizador lexico y gramatico y despues convertia las operaciones a lenguaje ensamblador. Y te preguntaba si era un trabajo de la escuela me imagino que es para ayer :xD pero si es por hacer algo puedes hacer tu propio Analizador Lexico y Gramatical Aqui el Analizador de Expresiones Aritmeticas que hice sin librerias mas que el substance :P Y de tu code aun no he revisado nada, mas tarde me doy una vuelta http://laquetegustaati.com.mx/D929/Analizador.rar Saludos PD:Solucionado, ocurre porque abc lo detecta como una variable y no como 3 factores (menuda empanada mental la mia xD) Saludos Título: Re: [ACTUALIZADO FUNCIONAL]Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 31 Marzo 2010, 12:15 pm Mejorado, solo queda un ultimo detalle.
Saludos Título: Re: Analizador de expresiones numéricas [SOURCE] Publicado por: 1mpuls0 en 31 Marzo 2010, 16:40 pm LO hago por placer si no he cumplido los 16 aun xD PD:Solucionado, ocurre porque abc lo detecta como una variable y no como 3 factores (menuda empanada mental la mia xD) Saludos Ok, que bueno que lo hagas por gusto, de esos programadores se necesitan ;D Bueno no creo que sea lo mas correcto regalarles el código y no es porque no quiero, tal vez pueda mostrarles cómo se hace, asi aprenden, esto lo hice en una materia que se llama Compiladores. Saludos y para tú otro problema ya te dijeron como se hace. Saludos Título: Re: [ACTUALIZADO FUNCIONAL]Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 31 Marzo 2010, 16:49 pm LO cierto es que lo solucioné sin necesidad de ayuda puesto que no entendi la respuesta del amigo LEYER.
Una cosa, que ando asustadillo, creeis que podria cursar carrera de informatica? me han dicho que es muy dificil y tal, pero poco a poco voy haciendo cosas para que luego no me cueste tanto. Saludos Título: Re: [ACTUALIZADO FUNCIONAL]Analizador de expresiones numéricas [SOURCE] Publicado por: Blitzkrieg' en 31 Marzo 2010, 16:59 pm LO cierto es que lo solucioné sin necesidad de ayuda puesto que no entendi la respuesta del amigo LEYER. Una cosa, que ando asustadillo, creeis que podria cursar carrera de informatica? me han dicho que es muy dificil y tal, pero poco a poco voy haciendo cosas para que luego no me cueste tanto. Saludos Nada en la vida es facil, eso si, muchos piensan que en la carrera de informatica solo veran programación, debes tener en cuenta que esa carrera abarca mucho mas que programación. Título: Re: [ACTUALIZADO FUNCIONAL]Analizador de expresiones numéricas [SOURCE] Publicado por: 1mpuls0 en 31 Marzo 2010, 17:41 pm LO cierto es que lo solucioné sin necesidad de ayuda puesto que no entendi la respuesta del amigo LEYER. Una cosa, que ando asustadillo, creeis que podria cursar carrera de informatica? me han dicho que es muy dificil y tal, pero poco a poco voy haciendo cosas para que luego no me cueste tanto. Saludos Yo estoy seguro de que si, de donde eres?, hace algunas semanas hice una pregunta aquí en este mismo foro, creo que dependiendo del lugar la carrera tiene un enfoque diferente. http://foro.elhacker.net/foro_libre/diferencia_entre_ing_en_sistemas_computacionales_y_lic_en_informaticaiquestiquest-t287252.0.html Pero estoy seguro de que si puedes. ::), mirate en donde estas y lo que has hecho, tu gusto por hacer las cosas, y para no desviarme del tema supe que podias hacer mas que el programa pasado para resolver expresiones numéricas. [of]En mi caso, estudio Ingenieria en Sistemas Computacionales y la mayor parte de las materias son de programación como matemáticas, deberias investigar primero en las universidades o en las propias paginas de las instituciones cuales son los enfoques de las carreras que te llama la atención, pensalo bien y decidir[/of] Un saludo Título: Re: [ACTUALIZADO FUNCIONAL]Analizador de expresiones numéricas [SOURCE] Publicado por: Debci en 31 Marzo 2010, 20:33 pm LO cierto es que lo solucioné sin necesidad de ayuda puesto que no entendi la respuesta del amigo LEYER. Una cosa, que ando asustadillo, creeis que podria cursar carrera de informatica? me han dicho que es muy dificil y tal, pero poco a poco voy haciendo cosas para que luego no me cueste tanto. Saludos Yo estoy seguro de que si, de donde eres?, hace algunas semanas hice una pregunta aquí en este mismo foro, creo que dependiendo del lugar la carrera tiene un enfoque diferente. http://foro.elhacker.net/foro_libre/diferencia_entre_ing_en_sistemas_computacionales_y_lic_en_informaticaiquestiquest-t287252.0.html Pero estoy seguro de que si puedes. ::), mirate en donde estas y lo que has hecho, tu gusto por hacer las cosas, y para no desviarme del tema supe que podias hacer mas que el programa pasado para resolver expresiones numéricas. [of]En mi caso, estudio Ingenieria en Sistemas Computacionales y la mayor parte de las materias son de programación como matemáticas, deberias investigar primero en las universidades o en las propias paginas de las instituciones cuales son los enfoques de las carreras que te llama la atención, pensalo bien y decidir[/of] Un saludo [tema real] Tengo una hipotesis del porqué del fallo. Saludos |