用编程求定积分

求y=sinx在区间(0,pi)上的定积分:
import numpy as np
import random
n=0;m=0;i=0
#n代表落在曲线下方,m表示上方;i表示函数y=sinx在(0,pi)上的定积分
for i in range(100000):
    x=random.uniform(0,np.pi)
    y=random.uniform(0,1)
    if(y>np.sin(x)):
        m=m+1
    else:
        n=n+1
i=np.pi*n/100000
print(i)

通过上面这个程序大家可以在函数y=f(x),而f(x)无法通过还导求得其原函数的时候使用,用编程的方法来解决定积分的问题。

用编程求定积分_第1张图片

 

 

你可能感兴趣的:(python,numpy,matplotlib)