Java - Expresiones algebraicas

 
Vista:

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.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Expresiones algebraicas

Publicado por arck (145 intervenciones) el 18/03/2016 09:41:41
Es mas complicado de lo que parece.

Entiendo que partimos de unas ecuaciones simples. Y siempre estará despejada la x o la y.

Yo me crearía una variable clase con un constructor con string, dentro analizas y generas, la clase con su X y las otras dos variables la de la Y y el numero suelto (constantes, prefiero separarlo antes de que te confundas con una constante de java).
Recuerda que tienes que guardar también los signos y todo, que eso debería quedar en otra variable

Después una función que dada la Y saque el valor de la X.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Expresiones algebraicas

Publicado por Diego (1 intervención) el 08/01/2021 05:50:01
un arbol binario de operaciones aritmeticas, cada nodo padre contiene un operador (+,-,*,/) y cada nodo hoja contiene un valor ("x",1,2,3) la forma de crearlo es lo mas dificil, pero tengo unas ideas, si te interesa podemos realizarlo, estoy con java y nesecito hacer lo mismo que vos, sumar funciones matematicas y obtener otra funcion, es para realizar un programa matematico que calcule estos valores y mediante esto calcular derivadas, interpolacion de lagrange, integrales,y practicamente casi toda matematica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Expresiones algebraicas

Publicado por David (1 intervención) el 06/10/2019 03:23:18
1
2
3
4
5
6
7
8
9
10
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("js");
Object operation;
try {
    operation = engine.eval(txt_funcion.getText());
    funcion = (operation.toString());
    JOptionPane.showMessageDialog(rootPane, funcion);
} catch (ScriptException e) {
    JOptionPane.showMessageDialog(rootPane, "Error expresion");
}


prueva con esto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar