方法一:更相減損法
用兩數中較大數減去較小數求得餘數,再將餘數和減數相比較較大的乙個賦給減數成為被減數,較小的乙個賦給餘數成為減數,
再用前面的方法進行處理直至餘數為0,此時的被減數就是這兩個數的最大公約數.兩數乘積再除以最大公約數即可得到最小公倍數。
#include
#include
#include
#include
#include
#pragma warning(disable: 4996)
void swap(int *x, int *y)
int main()
r = num1 - num2;
if (r > num2)
num1 = num2;
num2 = r;
}int minmul = product / num1;
printf("the greatest common divisor of %d and %d is: %d\n", m, n, num1);
printf("the least common multiple of %d and %d is: %d\n",m,n,minmul);
system("pause");
return 0;
}方法二:輾轉相除法
#include
#include
#include
#include
#include
#pragma warning(disable: 4996)
void swap(int *x, int *y)
int main()
quotient = num1 / num2;
r = num1%num2;
num1 = num2;
num2 = r;
}int minmul = product / num1;
printf("the greatest common divisor of %d and %d is: %d\n", m, n, num1);
printf("the least common multiple of %d and %d is: %d\n", m, n, minmul);
system("pause");
return 0;
}
求最大公約數,最小公倍數
歐幾里德遞迴演算法,大數對小數取餘直到小數為0,大數為最大公約數 param m param n return static int maxcommondivisor euclid recursion int m,int n return m 劉徽兩數相減直到兩數相等,等數為最大公約數 param ...
c 求最大公約數 最小公倍數
1 求兩個數的最大公約數 include stdafx.h include includeusing namespace std int tmain int argc,tchar argv else while max min 0 cout num1 num2 最大公約數為 temp endl re...
求最大公約數和最小公倍數
本篇文章中求最大公約數的方法是輾轉相除法,又稱歐幾里德演算法 方法是用較大的數除以較小的數,求得餘數,將餘數變成除數,除數變成被除數,重複這個過程,直到餘數變成0。而求最小公倍數的方法則是用原本兩個數的乘積除以最大公約數。define crt select no warings include in...