roblem I just want t

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

I have the question and the answer for this problem I just want to understand the concepts and logic of how to do it step by step

 

1. Obtain the initial approximation: app,=
b-a
f(a)+f(b)
2. Obtain the next approximation from the previous approximation:
21-2
b-a
app, =app +h £f(a+(2k–1)h) where h =
j2 1
k=1
Write a C-function whose prototype is double trap(double a,double b,double err,int nt); that will
apply this algorithm to obtain an approximation to ſf(x)dx. Iterations should continue until the
absolute value of the difference between successive approximations is less than err or a
maximum of nt iterations has been done. If the maximum iterations limit is reached, the function
should return -999 rather than the last approximation. You may assume that the function f has
been globally declared as double f(double ); . You do not need to write f, just trap!
double trap(double a, double b, double err, int nt)
{double old, new, h, sum;
int j,k,n;
h = b-a; /*each iteration will divide by 2 */
/*each iteration doubles the number of terms in the sum */
n=1;
old = h/2.*(f(a)+f(b)); /*should have been app1 in formula*/
for (j=2;j<=nt;j++)
{h = h/2; /*new h */
sum = 0.;
for (k=1;k<=n;k++) /*summation loop */
sum+=f (a+(2*k-1)*h);
new=0.5*old+h*sum;
if(fabs(new-old)<err)return new; /*test for convergence*/
n=n*2; i*if not, double number of terms in sum */
old = new; /*new approximation becomes old for next iteration */
return -999.; /*did not converge withing nt terms */
}
Transcribed Image Text:1. Obtain the initial approximation: app,= b-a f(a)+f(b) 2. Obtain the next approximation from the previous approximation: 21-2 b-a app, =app +h £f(a+(2k–1)h) where h = j2 1 k=1 Write a C-function whose prototype is double trap(double a,double b,double err,int nt); that will apply this algorithm to obtain an approximation to ſf(x)dx. Iterations should continue until the absolute value of the difference between successive approximations is less than err or a maximum of nt iterations has been done. If the maximum iterations limit is reached, the function should return -999 rather than the last approximation. You may assume that the function f has been globally declared as double f(double ); . You do not need to write f, just trap! double trap(double a, double b, double err, int nt) {double old, new, h, sum; int j,k,n; h = b-a; /*each iteration will divide by 2 */ /*each iteration doubles the number of terms in the sum */ n=1; old = h/2.*(f(a)+f(b)); /*should have been app1 in formula*/ for (j=2;j<=nt;j++) {h = h/2; /*new h */ sum = 0.; for (k=1;k<=n;k++) /*summation loop */ sum+=f (a+(2*k-1)*h); new=0.5*old+h*sum; if(fabs(new-old)<err)return new; /*test for convergence*/ n=n*2; i*if not, double number of terms in sum */ old = new; /*new approximation becomes old for next iteration */ return -999.; /*did not converge withing nt terms */ }
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
Managing System
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education