2.思路:輸入兩個數(shù)a,b,求兩個數(shù)的大公約數(shù)。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:申請域名、網(wǎng)站空間、營銷軟件、網(wǎng)站建設(shè)、古冶網(wǎng)站維護(hù)、網(wǎng)站推廣。
思路一
以a進(jìn)行減1,再對a和b分別對a-1求余。如果求余結(jié)果都為0,則是大公約數(shù)。如果求余結(jié)果都不為0,則繼續(xù)a-1再減1。不斷循環(huán),直到結(jié)果求余都為0,則這個數(shù)就是兩個數(shù)的大公約數(shù)。a一定是兩個數(shù)大的數(shù)。
思路二
3.解題代碼輾轉(zhuǎn)相除法,一種數(shù)學(xué)解法,顧名思義,反復(fù)的除,最終得到兩數(shù)的大公約數(shù)。 首先我們來分析下定理: 定理: 兩個整數(shù) 的 大公約數(shù) 等于其中 較小 的那個數(shù) 和 兩數(shù) 相除余數(shù) 的 大公約數(shù) 。輾轉(zhuǎn)相除法也可求最小公倍數(shù)。以a和b都是可以的,無順序關(guān)系。
思路一
#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{int a = 0;
int b = 0;
scanf("%d%d", &a, &b);
int min = a >b ? b : a;
while (1)
{if (a % min == 0 && b % min == 0)
{ printf("大公約數(shù)是: %d", min);
break;
}
min--;
}
return 0;
}
思路二
#define _CRT_SECURE_NO_WARNINGS
#includeint main()
{int a = 0;
int b = 0;
int x = 0;
scanf("%d%d", &a, &b);
while (x=a%b)
{a = b;
b = x;
}
printf("大公約數(shù)是: %d", x);
return 0;
}
4.提示第一點
int min = a >b ? b : a;
int min=0;
if (a >b)
min = b;
else
min = a;
這兩種都是求兩個數(shù)大的數(shù)。
第二點
方案二中,以a和b都是可以的,無順序關(guān)系。
試求兩個數(shù)的最小公倍數(shù),輾轉(zhuǎn)相除法也可求最小公倍數(shù),比較方便。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
標(biāo)題名稱:C語言----求兩個數(shù)的最大公約數(shù)-創(chuàng)新互聯(lián)
本文路徑:http://chinadenli.net/article34/ddgcpe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機、品牌網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、網(wǎng)站制作、商城網(wǎng)站、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)