Advertisement
Zinak

gcd lcm

Nov 22nd, 2019
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. // C++ program to print any pair
  2. // with a given gcd G and lcm L
  3. #include <bits/stdc++.h>
  4. using namespace std;
  5.  
  6. // Function to print the pairs
  7. void printPair(int g, int l)
  8. {
  9. int n = g * l;
  10.  
  11. // iterate over all factor pairs
  12. for (int i = 1; i * i <= n; i++) {
  13.  
  14. // check if a factor
  15. if (n % i == 0) {
  16. int first = i;
  17. int second = n / i;
  18.  
  19. // find gcd
  20. int gcd = __gcd(first, second);
  21.  
  22. // check if gcd is same as given g
  23. // and lcm is same as lcm l
  24. if (gcd == g && l % first == 0 && l % second == 0) {
  25. cout << first << " " << second;
  26. return;
  27. }
  28. }
  29. }
  30. }
  31.  
  32. // Driver Code
  33. int main()
  34. {
  35. int g = 3, l = 12;
  36. printPair(g, l);
  37. return 0;
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement