TheAlgorithms-C/numerical_methods/simpsons_1_3rd_rule.c

42 lines
836 B
C
Raw Normal View History

2020-04-08 02:31:29 +03:00
#include <math.h>
#include <stdio.h>
2018-10-02 02:31:05 +03:00
2020-04-08 02:31:29 +03:00
float f(float x)
2016-10-14 06:54:46 +03:00
{
return 1.0 +
x * x * x; // This is the expresion of the function to integrate?
2016-10-14 06:54:46 +03:00
}
2019-02-11 03:27:57 +03:00
2020-04-08 02:31:29 +03:00
int main()
2016-10-14 06:54:46 +03:00
{
int i, n;
float a, b, h, x, s2, s3, sum, integral;
printf("enter the lower limit of the integration:");
scanf("%f", &a);
printf("enter the upper limit of the integration:");
scanf("%f", &b);
printf("enter the number of intervals:");
scanf("%d", &n);
h = (b - a) / n;
sum = f(a) + f(b);
s2 = s3 = 0.0;
for (i = 1; i < n; i += 3)
{
x = a + i * h;
s3 = s3 + f(x) + f(x + h);
}
for (i = 3; i < n; i += 3)
{
x = a + i * h;
s2 = s2 + f(x);
}
integral = (h / 3.0) * (sum + 2 * s2 + 4 * s3);
printf("\nValue of the integral = %9.4f\n", integral);
return 0;
2016-10-14 06:54:46 +03:00
}