Area under curve, C/C++ Programming

Assignment Help:
Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b.

Related Discussions:- Area under curve

Prime, Prepare a program to obtain prime factors of any integer number usin...

Prepare a program to obtain prime factors of any integer number using functions

Write a simple telephone book program, Write a simple telephone book progra...

Write a simple telephone book program that stores the names and phone numbers of your friends/acquaintances in a file. Your program should have the abilities to: a. Add entries (na

What is the maximum number of constructors, Question: (a) (i) Explain...

Question: (a) (i) Explain how class members can be accessed when using objects of the class. Use a suitable example to illustrate your answer. (ii) Explain how the privat

Board coloring, n this problem u given a board in which some of the element...

n this problem u given a board in which some of the elements are placed as shown in diagram below .each element represent a color .fill the other elements in the board such that no

Program to calculate pie, This problem familiarizes you with using random n...

This problem familiarizes you with using random numbers in C++. The program is to compute a good approximation of p using a simulation method called "Monte Carlo". The following fi

Assignment help, It''s that spooky time of year when the dead walk the Eart...

It''s that spooky time of year when the dead walk the Earth, things go bump in the night, and the Centers for Disease Control (CDC) recognizes the need for zombie preparedness (

Write a program using a friend function, Using a Friend Using a friend ...

Using a Friend Using a friend function is quite easy. The following example explains a friend function to access members of two classes. class Bclass;

Develop opencv tracking, Help me evaluate suitable OpenCV filters to get an...

Help me evaluate suitable OpenCV filters to get an inital working tracking algorithm. In this case it's objects moving on water (sea) and since I have very limited OpenCV knowledge

diana

9/4/2012 4:20:01 AM

#include
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

Solution in java ::

// hackerx sasi kamaraj college of engineering and technology 2910007 java Program


//The answer to be precise... although the type was a double, it rounds off the answer. Any help would be //appreciated...
//java code: 1. :: try this or the another one below this one
//Program code ::

public class Reimann
{
private static double integral(String s, double[] descriptors, double lb, double ub)
{

double area = 0; // Area of the rectangle
double sumOfArea = 0; // Sum of the area of the rectangles
double oldSumOfArea = 0;
double width = ub - lb;
boolean firstPass = true;

while ( (Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass )
{

System.out.println((Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass);
if (s.equals("poly"))
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.pow ( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ), j);
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}
width = width / 2;
firstPass = false;
oldSumOfArea = sumOfArea;
}
return sumOfArea;
}

/*private static void runMyTests()
{
assert ( integral() <= 48.00001 ) && ( integral() >= 47.99999 );
}*/

public static void main (String [] args)
{

double lb = Double.parseDouble(args[args.length -2]);
double ub = Double.parseDouble(args[args.length -1]);

double[] coefficients = new double[args.length - 3];

if (args[0].equals("poly"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("poly", coefficients, lb, ub));
}
}
}



Java Program 2 ::

public class Riemann
{
private static double integral(String s, double[] descriptors, double lb, double ub)
{

double area = 0; // Area of the rectangle
double sumOfArea = 0; // Sum of the area of the rectangles
double oldSumOfArea = 0;
double width = ub - lb;
boolean firstPass = true;

while ( (Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass )
{

System.out.println((Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass);
if (s.equals("poly")) // Statement for polynomial
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.pow ( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ), j);
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}

else if (s.equals("sin")) // Statement for sin
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.sin(Math.toRadians(( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ))));
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}

else if (s.equals("cos")) // Statement for cos
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.cos(Math.toRadians(( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ))));
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}

width = width / 2;
firstPass = false;
oldSumOfArea = sumOfArea;
}

return sumOfArea;
}

/*private static void runMyTests()
{
assert ( integral() <= 48.00001 ) && ( integral() >= 47.99999 );
}*/

public static void main (String [] args)
{
double lb = Double.parseDouble(args[args.length -2]);
double ub = Double.parseDouble(args[args.length -1]);

double[] coefficients = new double[args.length - 3];

if (args[0].equals("poly"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("poly", coefficients, lb, ub));
}

else if (args[0].equals("sin"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("sin", coefficients, lb, ub));
}

else if (args[0].equals("cos"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("cos", coefficients, lb, ub));
}
}
}



Question ::
Area Under Curve

diana

9/4/2012 4:20:21 AM

#include
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

Solution in java ::

// hackerx sasi kamaraj college of engineering and technology 2910007 java Program


//The answer to be precise... although the type was a double, it rounds off the answer. Any help would be //appreciated...
//java code: 1. :: try this or the another one below this one
//Program code ::

public class Reimann
{
private static double integral(String s, double[] descriptors, double lb, double ub)
{

double area = 0; // Area of the rectangle
double sumOfArea = 0; // Sum of the area of the rectangles
double oldSumOfArea = 0;
double width = ub - lb;
boolean firstPass = true;

while ( (Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass )
{

System.out.println((Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass);
if (s.equals("poly"))
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.pow ( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ), j);
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}
width = width / 2;
firstPass = false;
oldSumOfArea = sumOfArea;
}
return sumOfArea;
}

/*private static void runMyTests()
{
assert ( integral() <= 48.00001 ) && ( integral() >= 47.99999 );
}*/

public static void main (String [] args)
{

double lb = Double.parseDouble(args[args.length -2]);
double ub = Double.parseDouble(args[args.length -1]);

double[] coefficients = new double[args.length - 3];

if (args[0].equals("poly"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("poly", coefficients, lb, ub));
}
}
}



Java Program 2 ::

public class Riemann
{
private static double integral(String s, double[] descriptors, double lb, double ub)
{

double area = 0; // Area of the rectangle
double sumOfArea = 0; // Sum of the area of the rectangles
double oldSumOfArea = 0;
double width = ub - lb;
boolean firstPass = true;

while ( (Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass )
{

System.out.println((Math.abs((oldSumOfArea - sumOfArea) / sumOfArea) > .0001) || firstPass);
if (s.equals("poly")) // Statement for polynomial
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.pow ( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ), j);
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}

else if (s.equals("sin")) // Statement for sin
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.sin(Math.toRadians(( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ))));
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}

else if (s.equals("cos")) // Statement for cos
{
for (int i = 1; i <= ((ub - lb) / width); i++) // represents # of rectangles
{
for (int j = 0; j < descriptors.length; j++) // Goes through all the coefficients
{
area = width * descriptors[j] * Math.cos(Math.toRadians(( (double)( (i * width + lb + (i -1.0) * width + lb) / 2.0 ))));
/*Above code computes area of each rectangle */

sumOfArea += area;

}
}
}

width = width / 2;
firstPass = false;
oldSumOfArea = sumOfArea;
}

return sumOfArea;
}

/*private static void runMyTests()
{
assert ( integral() <= 48.00001 ) && ( integral() >= 47.99999 );
}*/

public static void main (String [] args)
{
double lb = Double.parseDouble(args[args.length -2]);
double ub = Double.parseDouble(args[args.length -1]);

double[] coefficients = new double[args.length - 3];

if (args[0].equals("poly"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("poly", coefficients, lb, ub));
}

else if (args[0].equals("sin"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("sin", coefficients, lb, ub));
}

else if (args[0].equals("cos"))
{
for (int i = 1; i < args.length - 2; i++)
{
coefficients[i-1] = Double.parseDouble(args[i]);
}

System.out.println(integral("cos", coefficients, lb, ub));
}
}
}



Question ::
Area Under Curve

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd