# Numerical Methods: Integration of given function using Simpson’s 1/3 rule in C

**Source Code:**

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | //integration of given function using Simpson's 3/8 rule #include<stdio.h> float y(float x){ return 1/(1+x*x); //function of which integration is to be calculated } int main(){ float x0,xn,h,s; int i,n,j,flag; printf("Enter x0, xn, no. of subintervals: "); scanf("%f%f%d",&x0,&xn,&n); h = (xn-x0)/n; s = y(x0)+y(xn); for(i = 1; i<=n-1;i++){ for(j=1;j<=n-1;j++){ if(i==3*j){ flag = 1; break; } else flag = 0; } if(flag==0) s += 3*y(x0+i*h); else s += 2*y(x0+i*h); } printf("Value of integral is %6.4f\n",(3*h/8)*s); return 0; } |

this program is not correct — for a correct solution use this link — http://www.codewithc.com/c-program-for-simpson-1-3-rule/

this is correct program

Instead of return 1/1+(x*x),it should be written as return f because every function is different for different problems

Can you please tell me why we have to use i=3 in the for loop in initilization part with increment i=i+2.

How to plot corresponding area of the integral in Simpson 1/3 rule with c program?