garryhtreez

6.31

Dec 14th, 2020
402
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.92 KB | None | 0 0
  1. /* 6.31 Greatest Common Divisor
  2. Deitel& Deitel C++ How to Program, 10th ed (Indian subcontinent adaptation)
  3. Visual Studio Community 2019 */
  4.  
  5. #include <iostream>
  6. using namespace std;
  7.  
  8. int greatest(int integer1, int integer2 ) {
  9.     int remainder{ 0 };
  10.     if (integer1 == integer2) return integer1; // special case where the ints are equal
  11.     for (int testNum = integer1 / 2; testNum > 0; testNum--) {
  12.         if (integer1 % testNum == 0) { // found a candidate
  13.             if (integer2 % testNum == 0) return testNum;
  14.         }
  15.     }
  16.     return 1;
  17. }
  18.  
  19. int main() {
  20.     int int1{ 0 }, int2{ 0 }, gcd;
  21.     while (true) {
  22.         cout << "Enter two integers (or enter -1 to quit)" << endl << endl;
  23.         cout << "First integer: ";
  24.         cin >> int1;
  25.         if (int1 == -1) break;
  26.         cout << endl << "Second integer: ";
  27.         cin >> int2;
  28.         if (int2 == -1) break;
  29.         gcd = greatest(int1, int2);
  30.         cout << endl << "Greatest common divisor: " << gcd << endl << endl;
  31.     }
  32.     return 0;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment