Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

The Babylonian algorithm to compute the square root of a number n is as follows:

ID: 3660915 • Letter: T

Question

The Babylonian algorithm to compute the square root of a number n is as follows: 1. Make a guess at the answer (you can pick n/2 as your initial guess). 2. Compute r = n / guess 3. Set guess = (guess +r) / 2 4. Go back to step 2 for as many iterations as necessary. The more that steps 2 and 3 are repeated, the closer guess will become to the square root of n. Write a program that inputs an integer for n, iterates through the Babylonian algorithm twenty times, and outputs the answer as a double to two decimal places. Your answer will be most accurate for small values of n.

Explanation / Answer

#include : : using namespace std;: : : : #include // getch(): : #include // fabs(): : #include // system(): : : : int main(): : {: : : : int n;: : double guess, prev_guess, r;: : : : cout > n;: : : : guess = (double) n/2;: : : : while( true ): : {: : prev_guess = guess; // for comparison : : : : r = (double) n/guess;: : guess = (double) (guess+r)/2;: : : : if ( ( ((double) fabs((double)guess - prev_guess))/ prev_guess ) < 0.01 ) // guess is within 1% of the previous guess ? : : break;: : }: : : : cout