Problem: Here we have to find integration for the (1/1+x*x)dx with lower limit =0 to upper limit = 6
Algorithm:
Step 1: input a,b,number of interval n
Step 2:h=(b-a)/n
Step 3:If(n%6==0)
Then , sum=sum+((3*h/10)*(y(a)+y(a+2*h)+5*y(a+h)+6*y(a+3*h)+y(a+4*h)+5*y(a+5*h)+y(a+6*h)));
a=a+6*h
and Weddle’s rule is applicable then go to step 6
Step 4: else, Weddle’s rule is not applicable
Step 5:Display output
Code:
#include<stdio.h>
float y(float x){
return 1/(1+x*x); //function of which integration is to be calculated
}
int main(){
float a,b,h,sum;
int i,n,m;
printf("Enter a=x0(lower limit), b=xn(upper limit), number of subintervals: ");
scanf("%f%f%d",&a,&b,&n);
h = (b-a)/n;
sum=0;
if(n%6==0){
sum=sum+((3*h/10)*(y(a)+y(a+2*h)+5*y(a+h)+6*y(a+3*h)+y(a+4*h)+5*y(a+5*h)+y(a+6*h)));
a=a+6*h;
printf("Value of integral is %f\n", sum);
}
else{
printf("Sorry ! Weddle rule is not applicable");
}
}
Output:
