Вычислить значение определенного интеграла по формуле язык С

прошу помочь на языке С
По дате
По рейтингу
12345678910111213141516
double func(double x) {
return x * x * (x + 2) - 1;
}
double integral(double f(double), double a, double b, int n) {
double sum = 0.0;
for (int i = 0; i < n; ++i) {
sum += f((a * (n - i) + b * i) / n);
}
return sum * (b - a) / n;
}
int main() {
printf(" 10: %lg\n", integral(func, 1.0, 4.0, 10));
printf("100: %lg\n", integral(func, 1.0, 4.0, 100));
}
123456789101112131415161718192021222324
#include <stdio.h>
double func(double x) {
return x * x * x + 2 * x * x - 1;
}
double integral(int n, double left, double right) {
double h = (right-left)/n;
double sum = 0;
for (double xi = left; xi <= right; xi = xi + h) {
sum += func(xi);
}
return h * sum;
}
int main()
{
double res10 = integral(10,1,4);
printf("%lf\n",res10);
double res100 = integral(100,1,4);
printf("%lf\n",res100);
return 0;
}
А зачем Си то изучать, когда есть Си ++
Больше по теме