Python - Mensaje de error con from sympy import* en Python 3.8

 
Vista:
sin imagen de perfil
Val: 2
Ha disminuido su posición en 18 puestos en Python (en relación al último mes)
Gráfica de Python

Mensaje de error con from sympy import* en Python 3.8

Publicado por Luis Alberto (1 intervención) el 01/11/2020 08:09:39
Saludos, les cento estoy aprendiendo a programar en Pytho y tengo un problema cal importar sympy dentro de la funcion bisecc
1
2
3
4
5
6
7
8
9
10
11
12
from sympy import*
def bisecc(f,v,a,b,e):
    while b-a<=e:
        c=(a+b)/2
        if f.subs(v,c)==0:
            return c
        else:
            if f.subs(v,a)*f.subs(v,c)>0:
                a=c
            else:
                b=c
    return c
una ves guardada al ejecutar la misma desde la consola sucede lo siguiente

>> from bisecc import*
>> x=Symbol('x')
>> f=x*exp(x)-pi
>> c=bisecc(f,x,0,2,0.00001)
Traceback (most recent call last):
File "<ipython-input-4-82f0c0433030>", line 1, in <module>
c=bisecc(f,x,0,2,0.00001)
File "C:\Users\usuario\Documents\ProgrAmacion Python\Metodos numericos\Metodos Numericos\bisecc.py", line 21, in bisecc
return c
UnboundLocalError: local variable 'c' referenced before assignment

Y la verdad no comprendo cual es el problema, les agradeceria si alguien me da alguna luz sobre que esta pasando y como lo podria solucionar

Nota adjunto foto del mensaje de error que me muestra el IDE Spyder

Sin-titulo2
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
Imágen de perfil de Patricio
Val: 209
Ha disminuido 1 puesto en Python (en relación al último mes)
Gráfica de Python

Mensaje de error con from sympy import* en Python 3.8

Publicado por Patricio (42 intervenciones) el 02/11/2020 02:04:47
En tu función bisecc, en caso que no entre al while, estás retornando la variable "c" sin pasarle antes un valor.

Inicializa la variable 'c' antes del while.
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