Power Builder - Ecuaciones Matematicas

 
Vista:

Ecuaciones Matematicas

Publicado por Fredy (24 intervenciones) el 24/02/2005 20:36:00
Hola,

Necesito hacer una aplicacion en la cual se escriba una ecuacion matematica en un cuadro de texto y la aplicacion me la pueda resolver.

Alguien tiene una idea de como hacer esto, les agradesco mucho lo que me puedan ayudar.

Saludos.
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

RE:Ecuaciones Matematicas

Publicado por Oscar (1178 intervenciones) el 24/02/2005 21:36:03
Existe un OCX gratuito llamado: Equator 1.0 (114 KB), que permite usar operadores del tipo: +, - , *, / , ( , ) , ^ . Puedes bajarlo de:

http://members.tripod.com/cuinl/activex-5.htm

Los pasos para que funcione son:

1. Luego de descargarlo, lo instalas en tu PC.

2. En tu ventana de PB, insertas un control ole (en la ficha Insert Control, está como: EquatorV1.Equator), y un SingleLineEdit.

3. Luego el script, adaptado a PB es:

String ls_resultado, ls_calculo
ls_calculo=sle_1.text

ole_1.Object.Equation = ls_calculo
ole_1.Object.Calculate

ls_resultado=String(ole_1.Object.Result)
messagebox("Resultado", ls_resultado)
//----------Fin------------------------

Notas:
* El control ole_1, es invisible en tiempo de ejecución.
* Se probó con Win XP y PB 9 y por suerte, no reportó ningún error el uso de este OCX.
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

RE:Ecuaciones Matematicas

Publicado por Jhonatan (29 intervenciones) el 24/02/2005 23:32:27
Hola Fredy tambien hay otra manera de hacerlo con lo siguiente:

//utiliza todos los operadores
//la ecuacion puedes colocarlo en un objeto sle_1 y luego anteponerle
// el select

String ls_ecuacion, ls_rpta
ls_ecuacion = "Select 4+5 "
Declare cur_01 dynamic cursor for sqlsa;
prepare sqlsa from :ls_ecuacion;
open dynamic cur_01;
fetch cur_01 into :ls_rpta;
close cur_01;

messagebox('Respuesta',ls_rpta)

//Nota : siempre debes colocarle el select por delante de cualquier operacion

Espero te sirva

Suerte!!!!!!
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