• Viernes 19 de Abril de 2024, 17:17

Autor Tema:  Leer ecuación  (Leído 2153 veces)

juankepler

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Leer ecuación
« en: Lunes 31 de Enero de 2011, 18:05 »
0
Hola!
Quiero que mi programa le pida al usuario que ingrese un sistema de ecuaciones y para luego lo resolverlo.
Sé cómo resolver el sist. de ec. por medio de iteraciones, pero el usuario al ingresar las ecuaciones, éstas son un texto y no puedo evaluarlas para cada valor de x.
¿Cómo puedo convertir el texto de las ecuaciones una función?

Ej. del sistema de ecuaciones que podría ingresar el usuario (x1, x2, x3, son las variables):
"3*x1-cos(x2*x3)-1/2"
"x1**2-81*(x2+1/10)**2+sin(x3)+1.06"
"exp((-x1)*x2)+20*x3+(10*pi-3)/3"

Ej de la función que deseo generar:
def func(x1,x2,x3): #Defino el sistema de ecuaciones a resolver
        f=matrix ([1.]*3) #Creo un vector con tantos elementos como ecuaciones tengo
        f[0,0]= 3*x1-cos(x2*x3)-1/2
        f[0,1]= x1**2-81*(x2+1/10)**2+sin(x3)+1.06
        f[0,2]= exp((-x1)*x2)+20*x3+(10*pi-3)/3
        return f #Le pido a la función que me devuelva el valor de “f” como resultado

Gracias!

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: Leer ecuación
« Respuesta #1 en: Lunes 31 de Enero de 2011, 18:59 »
0
Código: Python
  1. import compiler
  2. eq= "sin(x)*x**2"
  3. ast= compiler.parse( eq )
  4.  

http://stackoverflow.com/questions/5942 ... -in-python