Нужна помощь,по информатике Численное интегрирование методами центральных прямоугольников, трапеций и Симпсона Вычислить определенный интеграл от функции f(х) на промежутке [а, b] методом прямоугольников. f (x) = (1 + x cosx)^2, a = -6, b = -5. Число разбиений n = 10; 40; 160; 640. Язык программирования Си
Пример программы на языке программирования Си для вычисления определенного интеграла методом центральных прямоугольников:
#include <stdio.h> #include <math.h> double f(double x) { return pow((1 + x * cos(x)), 2); } double rectangle_method(double a, double b, int n) { double h = (b - a) / n; double sum = 0.0; for (int i = 0; i < n; i++) { double x = a + h * (i + 0.5); sum += f(x); } return sum * h; } int main() { double a = -6.0; double b = -5.0; int n_values[] = {10, 40, 160, 640}; int n_values_length = sizeof(n_values) / sizeof(n_values[0]); for (int i = 0; i < n_values_length; i++) { int n = n_values[i]; double result = rectangle_method(a, b, n); printf("n = %d, Integral = %f\n", n, result); } return 0; }
Программа вычисляет определенный интеграл от функции f(x) на промежутке [-6, -5] методом центральных прямоугольников с различным числом разбиений n. В данном случае программа вычисляет значения для n = 10, n = 40, n = 160 и n = 640.
Пример программы на языке программирования Си для вычисления определенного интеграла методом центральных прямоугольников:
#include <stdio.h>#include <math.h>
double f(double x) {
return pow((1 + x * cos(x)), 2);
}
double rectangle_method(double a, double b, int n) {
double h = (b - a) / n;
double sum = 0.0;
for (int i = 0; i < n; i++) {
double x = a + h * (i + 0.5);
sum += f(x);
}
return sum * h;
}
int main() {
double a = -6.0;
double b = -5.0;
int n_values[] = {10, 40, 160, 640};
int n_values_length = sizeof(n_values) / sizeof(n_values[0]);
for (int i = 0; i < n_values_length; i++) {
int n = n_values[i];
double result = rectangle_method(a, b, n);
printf("n = %d, Integral = %f\n", n, result);
}
return 0;
}
Программа вычисляет определенный интеграл от функции f(x) на промежутке [-6, -5] методом центральных прямоугольников с различным числом разбиений n. В данном случае программа вычисляет значения для n = 10, n = 40, n = 160 и n = 640.