Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Area under the curve using rectangles and trapezoids
- import warnings
- warnings.filterwarnings("ignore", category=DeprecationWarning)
- def setup():
- global eq
- eq = input("Enter an equation in terms of x (use Python syntax) ")
- leftEnd = input("Enter lower bound ")
- rightEnd = input("Enter upper bound ")
- leftEnd = int(leftEnd)
- rightEnd = int(rightEnd)
- n = input("Enter the number of rectangles or trapezoids? ")
- n = int(n)
- # Calculating the area using the width of the rectangle
- deltaX = (rightEnd - leftEnd) / int(n)
- # print result
- print("The width is ", deltaX)
- print("Left (Lower) end sum is ", leftSum(n, leftEnd, deltaX))
- print("Right (Upper) end sum is ", rightSum(n, leftEnd, deltaX))
- print("Trapezoid sum is ", trap(n, leftEnd, deltaX))
- def leftSum(num, le, dx):
- leftSum = 0.0
- for i in range(num):
- x = le + i * dx
- h = eval(eq)
- leftSum = leftSum + h * dx
- return leftSum
- def rightSum(num, le, dx):
- rightSum = 0.0
- for i in range(num):
- x = le + (i + 1) * dx
- h = eval(eq)
- rightSum = rightSum + h * dx
- return rightSum
- def trap(num, le, dx):
- tSum = .5 * (rightSum(num, le, dx) + leftSum(num, le, dx))
- return tSum
- def main():
- setup()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement