The Babylonian algorithm to compute the square root of a number n is as follows:
ID: 3663132 • 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 a double for n and iterates through the Babylonian algorithm 100 times. For a more challenging version, iterate until guess is within 1% of the previous guess and outputs the answer as a double.
Can i please get above program in C++
Explanation / Answer
/* Program for Babylonian algorithm */
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
int main()
{
int num;
double r11, gue(4), lastGue;
cout << "Enter the number to find a square root of: ";
cin >> num;
do
{
r11 = num / gue;
lastGue = gue;
gue = ( gue + r11 ) / 2;
cout << "The Guess : " << gue << endl;
cout << "The Last Guess 1% = " << lastGue + ( lastGue * 0.01 ) << endl;
cout << "r = " << r11 << endl;
} while( gue >= lastGue * 1.01 );
cout << r11;
return 0;
}
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.