• Domingo 28 de Abril de 2024, 21:26

Autor Tema:  Evaluar Expresiones  (Leído 4362 veces)

BLADDE

  • Miembro activo
  • **
  • Mensajes: 63
    • Ver Perfil
Evaluar Expresiones
« en: Jueves 7 de Febrero de 2008, 18:50 »
0
amigos como estan mi pregunta es la siguiente creen ustedes posible que se pueda realizar de una manera directa la evaluacion de una expresion matematica es decir supongamos que

texBox1.text="2^4";


como hago para evaluar esa expresion y me de el resultado correspondiente??

por ejemplo q yo tenga una funcion
numero=eval(TextBox1.text);
ojo eval que haga directo la evaluacion de la cadena
se puede esto??


PD lo estoy haciendo a lo arcaico es decir un case que tiene los operadores y funciones si encuentro por ejemplo un ^  entonces tomo lo q esta ala derecha y lo elevo a lo q esta a su izquierda.

mi intencion es saber si se puede hacer directo atraves del lenguaje c#

hano

  • Miembro activo
  • **
  • Mensajes: 87
    • Ver Perfil
Re: Evaluar Expresiones
« Respuesta #1 en: Jueves 7 de Febrero de 2008, 19:25 »
0
Puedes mirarte el patrón Interpreter y hacerte un evaluador sencillo.

También puedes investigar cómo llamar a la funcíon 'eval' desde C#.

Un saludo.
                                                                                               
Para programadores
http]
[url=https://hardprogrammer.blogspot.com]https]

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Evaluar Expresiones
« Respuesta #2 en: Jueves 7 de Febrero de 2008, 21:11 »
0
Cita de: "BLADDE"
amigos como estan mi pregunta es la siguiente creen ustedes posible que se pueda realizar de una manera directa la evaluacion de una expresion matematica es decir supongamos que

texBox1.text="2^4";


como hago para evaluar esa expresion y me de el resultado correspondiente??

por ejemplo q yo tenga una funcion
numero=eval(TextBox1.text);
ojo eval que haga directo la evaluacion de la cadena
se puede esto??


PD lo estoy haciendo a lo arcaico es decir un case que tiene los operadores y funciones si encuentro por ejemplo un ^  entonces tomo lo q esta ala derecha y lo elevo a lo q esta a su izquierda.

mi intencion es saber si se puede hacer directo atraves del lenguaje c#
yo utilizaria expresiones regulares, y arboles.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

BLADDE

  • Miembro activo
  • **
  • Mensajes: 63
    • Ver Perfil
Re: Evaluar Expresiones
« Respuesta #3 en: Jueves 7 de Febrero de 2008, 21:23 »
0
jeje lo de la funcion eval fue algo que puse como ejemplo cuando me refiero a eval es algo contenga una libreria o rutina encargada de hacer el parser que deseo
gracias de todas formas sigo buscando

BLADDE

  • Miembro activo
  • **
  • Mensajes: 63
    • Ver Perfil
Re: Evaluar Expresiones
« Respuesta #4 en: Jueves 7 de Febrero de 2008, 21:33 »
0
jejeje expresiones regulares y arboles es hacer toda el analisis de la cadena me imagino esta una libreria q se encarge de eso acabo de encontrar algo q se llama
IMSL http://www.vni.com/products/imsl/cSharp/overview.php pero no hallo como bajarla incontre otra http://www.cdrnet.net/projects/nmath/   estas logre bajar solo 2 de las q comenta la Ytrium no la logro descargar y creo q es la q me sirve.
las 2 que descarge no encuentro como meterlas a mi sharpdeveloper o al .net si alguen me ayuda pls jejejej