SayoriOS  0.3.3
integral.c
1 #include "common.h"
2 
3 double trapezoidal_rule(double (*f)(double), double a, double b, size_t steps) {
4  double h = (b - a) / steps;
5  double sum = 0.5 * (f(a) + f(b));
6 
7  for (size_t i = 1; i < steps; i++) {
8  double x = a + (double)i * h;
9  sum += f(x);
10  }
11 
12  return h * sum;
13 }
Основные определения ядра