Friday, January 19, 2024

trapezoidal rule numerical in c

 #include<stdio.h>

float f(float x)

{

    return(x*x);

}

void main()

{

    int i,n;

    float x0,xn,h,y[20],s=0,ans,x[20];

    printf("\n Enter values of x0,xn,h: ");

    scanf("%f%f%f",&x0,&xn,&h);

    n=(xn-x0)/h;

    if(n%2==1)

    {

        n=n+1;

    }

    h=(xn-x0)/n;

    printf("\n Refined value of n and h are:%d %f\n",n,h);

    printf("\n Y values: \n");

    for(i=0; i<=n; i++)

    {

        x[i]=x0+i*h;

        y[i]=f(x[i]);

        printf("\n %f\n",y[i]);

    }


    for(i=1; i<n; i++)

    {

            s=s+y[i];

    }


    printf("  i        x           y\n");


    for (i=0;i<n;i++)

    {

        printf("  %d    %lf    %lf\n",i,x[i],y[i]);

    }

    ans=h/2*(y[0]+y[n]+2*s);

    printf("\n Final integration is %f",ans);

}

No comments:

Post a Comment