Вычислить интеграл, разбивая отрезок интегрирования на n равных частей - C#
Формулировка задачи:
подынтегральная функция:Ln^2*x/x (x в числителе не относится к степени нат. логар. )
границы интегрирования:1,4
n=52
выражение для первообразной подынтегральной ф-ии : 1/3*(Ln^3)x (x в числителе не относится к степени нат. логар. )
НУЖНО РЕШИТЬ МЕТОДОМ ТРАПЕЦИЙ И МЕТОДОМ СИМПСОНА
ПОЖАЛУЙСТА ПОМОГИТЕ!
Решение задачи: «Вычислить интеграл, разбивая отрезок интегрирования на n равных частей»
textual
Листинг программы
private static double f(double x)
{
return Math.Pow(Math.Log(x, Math.E), 2)/x;
}
private static double sum(double start, double end, double h, int step, Func<double, double, double, double> func)
{
double sum =0;
for(double x=start+h; x<end; x+=step*h)
{
sum+=func(x-h, x, x+h);
}
return sum;
}
static void Main(string[] args)
{
//получаем границы и к-во шагов
double h = (end-start)/n;
double trap = h*((f(start) +f(end))/2+sum(start, end, h, 1, (x1,x2,x3)=> f(x2)));
double simp = h*sum(start, end, h, 2, (x1,x2,x3)=>f(x1)+4*f(x2)+f(x3))/3;
}