area under curve, C/C++ Programming

Assignment Help:

write a program to find the area under the curve y=f(x) between x=a & x=b

Related Discussions:- area under curve

Padovanstring, write a program that counts the number of occurances of the ...

write a program that counts the number of occurances of the string in the n-th padovan string p(n)

Matrix transposition cipher, write a C rpogram that can display the transpo...

write a C rpogram that can display the transpose form of a ciphertext matrix.Prompt users to provide row and coloumn number of matrix.Then user will input plaintext and the program

What are the differences among a struct in c & in c++?, A: In C++ a struct ...

A: In C++ a struct is alike to a class except for the default access specifier( refer to other question in the document). In C we ought to include the struct keyword while declarin

Member dereferencing operators, M em b e r d e r e f e r e n c ...

M em b e r d e r e f e r e n c i ng o p e r a t o r s: T h e s e op e r a t o r s w i l l b e d i s c u s s e d l a t

what does it mean to declare a member variable as a static, b) The static ...

b) The static keyword let a variable to maintain its value among distinct function calls. If the value of a static variable alters while the variable has been accessed, variable

Build a standalone module to extract and parse, A skilled programmer is req...

A skilled programmer is required to build a standalone module to extract, parse and store in database tables, word count data from web pages and RSS feeds. The module will take

Credit Card Validation Check digit, Use 16 digit credit card numbers that c...

Use 16 digit credit card numbers that contain 15 digits an 1 check digit. The format of the card number consists of the 15 digits followed by the check digit. The check digit is co

Stream input and output functions, Within C we access external devices by ...

Within C we access external devices by means of a pointer i.e. address. The address could point to any memory mapped device i.e. Ram, Rom, Duart, Disk drives etc. Therefore there i

diana

9/4/2012 4:19:48 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