本文將詳細介紹C語言中求公約數(shù)和小公倍數(shù)的方法。包括輾轉(zhuǎn)相除法、相減法、輾轉(zhuǎn)相減法和窮舉法等。通過本文的學習,讀者將能夠掌握這些方法的實現(xiàn)和應用。
1. 輾轉(zhuǎn)相除法
輾轉(zhuǎn)相除法又稱歐幾里得算法,是求公約數(shù)的一種常用方法。其基本思想是用較大數(shù)除以較小數(shù),再用余數(shù)去除除數(shù),直到余數(shù)為0為止。的除數(shù)即為公約數(shù)。
C語言代碼實現(xiàn)
ttt b)
if (b == 0) a;
else gcd(b, a % b);
2. 相減法
相減法是求公約數(shù)的另一種方法。其基本思想是用較大的數(shù)減去較小的數(shù),然后不斷重復這個過程,直到兩個數(shù)相等為止。的這個數(shù)即為公約數(shù)。
C語言代碼實現(xiàn)
ttt b)
while (a != b)
{
if (a >b)
a -= b;
else
b -= a;
} a;
3. 輾轉(zhuǎn)相減法
輾轉(zhuǎn)相減法是求公約數(shù)的一種方法。其基本思想是用較大數(shù)減去較小數(shù),然后不斷重復這個過程,直到兩個數(shù)相等為止。的這個數(shù)即為公約數(shù)。
C語言代碼實現(xiàn)
ttt b)
if (a == b) a;
else if (a >b) gcd(a - b, b);
else gcd(a, b - a);
4. 窮舉法
窮舉法是求公約數(shù)和小公倍數(shù)的一種方法。其基本思想是從兩個數(shù)中較小的數(shù)開始,依次往下枚舉,找到兩個數(shù)都能整除的數(shù),即為公約數(shù)。小公倍數(shù)則為兩個數(shù)的乘積除以公約數(shù)。
C語言代碼實現(xiàn)
ttt b)
{t i, gcd = 1;
for (i = 1; i<= a && i<= b; i++)
{
if (a % i == 0 && b % i == 0)
gcd = i;
} gcd;
ttt b)
{ a b / gcd(a, b);
本文介紹了C語言中求公約數(shù)和小公倍數(shù)的多種方法,包括輾轉(zhuǎn)相除法、相減法、輾轉(zhuǎn)相減法和窮舉法。讀者可以根據(jù)實際情況選擇合適的方法進行實現(xiàn)。