Привет. В настоящее время я пишу программу на Python, которая делит от 1
до 0
на n
кусков и объединяет их на основе количества кусочков, каждая трапеция будет иметь (1-0)/n
в качестве равной ширины.
Вот код:
from numpy import sqrt,sin,arange
def f(x):
return (sin(sqrt(100*x))**2)
def trapezoidal(f, a, b, n):
h = float(b - a) / n
s = 0.0
s += f(a)/2.0
for i in range(1, n):
s += f(a + i*h)
s += f(b)/2.0
return s * h
print(trapezoidal(f(x), 5, 10, 100))
Ребята, думаете ли вы, что этот код может работать? Кроме того, как вы добавляете последовательность или цикл, который вычисляет область для 1,2,4,8,16
до 2^10
?