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: