Expresiones algebraicas
Publicado por Francisco (2 intervenciones) el 17/03/2016 21:02:08
Hola.
Tratare de ser breve y claro para no confundir.
Quiero construir un programa en java, que evalue una expresión algebraica introducida por el usuario ejemplo:
y=5x+9 ó y=5*4/2
Es decir, con variable "x" y constantes, los operadores serían unicamente suma resta multiplicacion y división.
una vez ingresada la expresión el programa debe pedir el valor de la variable x y calcular el valor de "y"
El programa sera en modo consola.
Como he pensado hacerlo?:
1.-Recibir la expresión que ingresa el usuario con Scanner
2.- Guardar la expresión en una cadena
3.- Recorrer la cadena con un siclo para saber donde hay operadores y donde hay numeros usando el metodo CharAt.
Lo que no se como hacer es como ordenar los caracteres para mandar los numeros a una variable y luego aplicar las operaciones con el numero que aparezca despues y antes de los operadores. no se si usar Pilas o Arboles binarios.
Si alguien puede ayudarme a hacer un borrador de eso se los agradeceria.
Tratare de ser breve y claro para no confundir.
Quiero construir un programa en java, que evalue una expresión algebraica introducida por el usuario ejemplo:
y=5x+9 ó y=5*4/2
Es decir, con variable "x" y constantes, los operadores serían unicamente suma resta multiplicacion y división.
una vez ingresada la expresión el programa debe pedir el valor de la variable x y calcular el valor de "y"
El programa sera en modo consola.
Como he pensado hacerlo?:
1.-Recibir la expresión que ingresa el usuario con Scanner
2.- Guardar la expresión en una cadena
3.- Recorrer la cadena con un siclo para saber donde hay operadores y donde hay numeros usando el metodo CharAt.
Lo que no se como hacer es como ordenar los caracteres para mandar los numeros a una variable y luego aplicar las operaciones con el numero que aparezca despues y antes de los operadores. no se si usar Pilas o Arboles binarios.
Si alguien puede ayudarme a hacer un borrador de eso se los agradeceria.
Valora esta pregunta


0