Итак, я хочу сделать цикл while, чтобы просто вычислить интеграл некоторых случайных функций. Дело в том, что когда я передаю opción = 1, он делает первое, если (хорошо), но когда я передаю другое число, оно ломается. Очевидно, потому что True = 1 и False = 0. Так как я могу сделать это, чтобы сделать цикл while до (1,2,3), пока я не нажму 4 ... Заранее большое спасибо
while opcion == True:
if opcion == 1:
print('Vamos a calcular la siguiente integral:')
f = a*x + b
integral = sp.Integral(f, x)
sp.pprint(integral)
print()
print('Que tiene como resultado:')
sp.pprint(sp.integrate(f,x))
print()
print('Introducimos los límites y valores de las'
' constantes para caluclarla')
lim_inf = int(input('Límite inferior = '))
lim_sup = int(input('Límite superior = '))
while (lim_inf == lim_sup):
print('Los límites no pueden ser iguales !! '
'Vuelve a introducir valores diferentes')
lim_inf = int(input('Límite inferior = '))
lim_sup = int(input('Límite superior = '))
a = int(input('valor a = '))
b = int(input('valor de b = '))
res = integrate.quad(grad1, lim_inf, lim_sup, args=(a,b))
print()
print('Valor de la integral',res[0])
elif opcion == 2:
print('Vamos a calcular la siguiente integral:')
f = a*x**2 + b*x + c
integral = sp.Integral(f, x)
sp.pprint(integral)
print()
print('Que tiene como resultado:')
sp.pprint(sp.integrate(f,x))
print()
print('Introducimos los límites y valores de las'
' constantes para caluclarla')
lim_inf = int(input('Límite inferior = '))
lim_sup = int(input('Límite superior = '))
while (lim_inf == lim_sup):
print('Los límites no pueden ser iguales !! '
'Vuelve a introducir valores diferentes')
lim_inf = int(input('Límite inferior = '))
lim_sup = int(input('Límite superior = '))
a = int(input('valor a = '))
b = int(input('valor de b = '))
res = integrate.quad(grad2, lim_inf, lim_sup, args=(a,b))
print()
print('Valor de la integral',res[0])
elif opcion == 3:
print('Vamos a calcular la siguiente integral:')
f = a*x**3 + b*x**2 + c*x**2 + d
integral = sp.Integral(f, x)
sp.pprint(integral)
print()
print('Que tiene como resultado:')
sp.pprint(sp.integrate(f,x))
print()
print('Introducimos los límites y valores de las'
' constantes para caluclarla')
lim_inf = int(input('Límite inferior = '))
lim_sup = int(input('Límite superior = '))
while (lim_inf == lim_sup):
print('Los límites no pueden ser iguales !! '
'Vuelve a introducir valores diferentes')
lim_inf = int(input('Límite inferior = '))
lim_sup = int(input('Límite superior = '))
a = int(input('valor a = '))
b = int(input('valor de b = '))
res = integrate.quad(grad3, lim_inf, lim_sup, args=(a,b))
print()
print('Valor de la integral',res[0])
elif opcion == 4:
break