From eb51243ae25b327c99f9501badb7b33efc6b2486 Mon Sep 17 00:00:00 2001 From: RossTheRoss Date: Thu, 21 Feb 2019 15:40:19 +0000 Subject: Fix things --- ee1301/wk3/lab3/RootBabylonOG.cpp | 16 ++++++++-------- ee1301/wk3/lab3/gcd.cpp | 25 ++++++++++++++++++------- 2 files changed, 26 insertions(+), 15 deletions(-) diff --git a/ee1301/wk3/lab3/RootBabylonOG.cpp b/ee1301/wk3/lab3/RootBabylonOG.cpp index 5e73234..3abdd36 100644 --- a/ee1301/wk3/lab3/RootBabylonOG.cpp +++ b/ee1301/wk3/lab3/RootBabylonOG.cpp @@ -3,7 +3,7 @@ using namespace std; double gennewGuess(double n, double old_guess) { - double new_guess = (old_guess+n/old_guess)/2; + double new_guess = ((old_guess+n) / old_guess) / 2; return new_guess; } @@ -13,21 +13,21 @@ double BabylonRoot(double n) { do { guess = gennewGuess(n,guess); cout << guess << endl; - } while ((guess-real)/real>0.01); + } while ((guess-real)/real>0.01); //Keep guessing unitl within 1% of the actual square root return guess; } int main () { - double temp; + double n, guess; cout << "Enter the Number to find square root: "; - cin >> temp; - if (temp<=0) { + cin >> n; + if (n<=0) { cout << "Please enter a valid input(Positive Integer)." << endl; return sqrt(-1); } cout << "Guessing..." << endl; - double real=sqrt(temp); - temp = BabylonRoot(temp); - cout << "The Final Guess: " << temp << endl + double real=sqrt(n); + guess = BabylonRoot(n); + cout << "The Final Guess: " << guess << endl << "Actual Value: " << real << endl; } diff --git a/ee1301/wk3/lab3/gcd.cpp b/ee1301/wk3/lab3/gcd.cpp index 435fd07..e9c1801 100644 --- a/ee1301/wk3/lab3/gcd.cpp +++ b/ee1301/wk3/lab3/gcd.cpp @@ -3,7 +3,7 @@ using namespace std; int GCD(int a, int b) { - int gcd=0; + int gcd=1; a=abs(a); b=abs(b); if (a>b) { //do nothing @@ -11,15 +11,26 @@ int GCD(int a, int b) { if (b>a) { int foo=a; a=b; b=foo; } else { - return 1; + return -1; } } - gcd=(a/b)+(a%b); - return gcd; + gcd=(a%b); + while (gcd!=0) { + return GCD(b,gcd); + } + return b; + } int main () { int a=0, b=0; - cout << "Enter two integers: "; - cin >> a, b; - cout << GCD(a,b) << endl; + char cont; + do { + cout << "enter two integer values: "; + cin >> a >> b; + cout << "greatest common divisor is: " << GCD(a,b) << endl; + cout << "continue? (y/n): "; + cin >> cont; + cout << endl; + } while (cont!='n'); + } -- cgit v1.2.3