# Compute Area under a Curve C Program

#include <stdio.h>

/* GLOBAL VARIABLES */
float    start_point, end_point, total_area;

int    numtraps;
main( )
{
void    input(void);
float    find_area(float a,float b,int n); /* prototype */

print(“AREA UNDER A CURVE”);
input( );
total_area = find_area(start_point, end_point, numtraps);
printf(“TOTAL AREA = %f”, total_area);
}
void input(void)
{
printf(“\n Enter lower limit:”);
scanf(“%f”, &start_point);
printf(“Enter upper limit:”);
scanf(“%f”, &end_point);
printf(“Enter number of trapezoids:”);
scanf(“%d”, &numtraps);
}
float find_area(float a, float b, int n)
{
floatbase, lower, h1, h2;    /* LOCAL VARIABLES */
float function_x(float x);    /* prototype */
float trap_area(float h1,float h2,floatbase);/*prototype*/
base = (b-1)/n;
lower = a;
for(lower =a; lower <= b-base; lower = lower + base)
{
h1  =  function_x(lower);
h1  =  function_x(lower + base);
total_area += trap_area(h1, h2, base);
}
return(total_area);
float trap_area(float height_1,float height_2,floatbase)
{
float area;    /* LOCAL VARIABLE */

area = 0.5 * (height_1 + height_2) * base;
return(area);
}
float function_x(float x)
{
/* F(X) = X * X + 1 */
return(x*x + 1)
}
Output:
AREA UNDER A CURVE
Enter lower limit: 0
Enter upper limit:  3
Enter number of trapezoids: 30
TOTAL AREA   =  12.005000

AREA UNDER A CURVE
Enter lower limit: 0
Enter upper limit: 3
Enter number of trapezoids: 100
TOTAL AREA = 12.000438