Está en la página 1de 3

METODO DEL TRAPECIO

from sympy import*

import matplotlib.pyplot as plt

import numpy as np

def Atrap(a,b,n,f,li):

suma=0

parte1=(b-a)/(2*n)

for i in range (1,n):

suma=suma+li[i]

suma=2*suma

fa=f(a)

fb=f(b)

parte2=fa+fb+suma

area=parte1*parte2

return area

x=symbols('x')

lixi=[]

lifxi=[]

f=input("Ingrese la función en x= ")

funcion=lambdify(x, f)

while True:
a=input(" Ingrese el intervalo inferior a= ")

b=input("Ingrese el intervalo superior b= ")

a=lambdify(x, a)

b=lambdify(x, b)

a=a(1)

b=b(1)

if a>b:

mayor=a

menor=b

a=menor

b=mayor

break

elif a==b:

print("Esoso no son valroes para a y b")

else:

break

while True:

div=int(input("Ingrese el valor de n " ))

if div<0:

print("Los valores negativos son incorrectos")

else:

break
h=float((b-a)/div)

r=a

for i in range(0,div):

lixi.append(r)

r=r+h

for i in range(0,div):

lifxi.append(round(funcion(lixi[i]),7))

area=Atrap(a, b, div, funcion, lifxi)

areatotal=integrate(f,(x,a,b))

porcentaje=round(abs((areatotal-area)/areatotal)*100,5)

print("Area obtenida por el metodo del trapecio :" ,area)

print("Area real :" ,areatotal)

print("Porcentaje de Error :",porcentaje)

También podría gustarte