Logo 
Search:

C Programming Articles

Submit Article
Home » Articles » C Programming » Mathematics ProgramRSS Feeds

Program to compute area under a curve

Posted By: Finley Evans     Category: C Programming     Views: 24454

Write a program to compute area under a curve.

Code for Program to compute area under a curve in C Programming

#include <stdio.h>
float    start_point,            /* GLOBAL VARIABLES */
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
  
Share: 


Didn't find what you were looking for? Find more on Program to compute area under a curve Or get search suggestion and latest updates.

Finley Evans
Finley Evans author of Program to compute area under a curve is from London, United Kingdom.
 
View All Articles

 
Please enter your Comment

  • Comment should be atleast 30 Characters.
  • Please put code inside [Code] your code [/Code].

 
Alpha Bet from Australia Comment on: Jun 02
why is it giving output as zero???

// program to calculate area under f(x) = x*x+1
#include<stdio.h>
float f_l(float);
float area(float, float, int);
int main (void)
{
float ll, ul; // ll-lower limit ul-upper limit
int n; // no of trapezoids
printf("enter lower limit and upper limit\t",ll,ul);
scanf("%f %f",&ll,&ul);
printf("enter no of trapezoids\t");
scanf("%d",&n);
printf("total area = %f",area(ll, ul,n));
return 0;
}
float area(float x, float y,int p)
{
float a1=0,a2=0,b;
int k;
b = y/p;
for (k=0;k<p;k++)
a1 += ((f_l(b*k)+f_l((b*(k+1))))*b*(1/2));
b = x/p;
for (k=0;k<p;k++)
a2 += ((f_l(b*k)+f_l((b*(k+1))))*b*(1/2));
return (a1-a2);
}

float f_l(float g)
{
return (g*g + 1);
}

Ms Leeli from Brunei Darussalam Comment on: Apr 13
it doesnt work in turbo c++
can you give the program in turbo c++ with the same output

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





for example


#include<stdio.h>
main()

...........

View All Comments