Используя метод Симпсона, составить программу вычисления определенного интеграла на отрезке - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Используя метод СИмпсона, составить программу вычисления определенного интеграла на отрезке [a,b] Интеграл от П\4 до П\2, под знаком интеграла pow(sin(x),2)*dx

Решение задачи: «Используя метод Симпсона, составить программу вычисления определенного интеграла на отрезке»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <math.h>
  3. #include <conio.h>
  4. double ffunc(double x)
  5. {
  6. double pop;
  7. pop=1/sqrt(x);
  8.     return pop;
  9. }
  10. double integral(double (*f)(double), double a, double b)
  11. {
  12. int n=10;
  13. int i;
  14. double h=(b-a)/n;
  15. double s,x=a;
  16. double pop2;
  17. s=f(a)+f(b);
  18. for (i = 1; x < b ; i++) {
  19.     x=x+2*h;
  20.     s+=f(x)*2;
  21. }
  22.     x=a-h;
  23. for (i = 1; x < b; i++) {
  24.         x=x+2*h;
  25.     s+=f(x)*4;
  26.     }
  27. pop2=s*h/3;
  28. return pop2;
  29. }
  30. void main()
  31. {
  32. double pi=3.141592653589, b,a;
  33. a=pi/4;
  34.     b=pi/2;
  35. printf("\n integral = %le",integral(ffunc,a,b));
  36. scanf("%f",a);
  37. }

Объяснение кода листинга программы

  1. Объявлены функции ffunc и integral.
  2. В функции ffunc вычисляется значение функции f(x) = 1/sqrt(x).
  3. В функции integral задается количество подмоток n=10, а также значения a и b, ограничивающие интервал интегрирования.
  4. Вычисляется шаг h как h=(b-a)/n.
  5. Инициализируется переменная s как сумма f(a) и f(b).
  6. В цикле выполняется интегрирование методом Симпсона, где каждая итерация добавляет в s значения f(x) умноженные на 2 или 4 в зависимости от того, находится ли x в интервале [a,b].
  7. Вычисляется значение pop2 как s*h/3.
  8. В функции main задаются значения a и b для интеграции.
  9. Вычисляется и выводится результат интеграции integral(ffunc,a,b).
  10. Пользователю предлагается ввести новое значение для a, но ввод не происходит, так как функция scanf ожидает ввода в переменную a, которая уже содержит значение после выполнения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.9 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы