#include //萬(wàn)能頭文件
using namespace std;
int main()
{
int a,b,c,d,e;
cin>>a>>b>>c;
d=max(max(a,b),c); //使用c++的內(nèi)置函數(shù)max和min
e=min(min(a,b),c);
c=__gcd(d,e); //使用c++內(nèi)置函數(shù)__gcd求大公約數(shù)
printf("%d/%d",e/c,d/c); //分子和分母分別除以大公約數(shù)約分
}
如果我不想用c++的內(nèi)置函數(shù)__gcd求大公約數(shù),想自己寫咋辦?
那我們就自己干!
歐幾里得算法又叫輾轉(zhuǎn)相除法.用我們通俗易懂的話解釋,除數(shù)一直和余數(shù)玩,直到把余數(shù)完沒(méi)了(余數(shù)為零),這時(shí)候的除數(shù)就是我們求的大公約數(shù).如16和10的大公約數(shù)如何求?
step 1:16÷10=1······6
step 2:10÷6=1······4
step 3:6÷4=1······2
step 4:4÷2=2······0? ? ? 此時(shí)除數(shù)2就是16和10的大公約數(shù)
代碼如何實(shí)現(xiàn)?#includeusing namespace std;
int main()
{
int a,b,c;
cin>>a>>b; //輸入被除數(shù)和除數(shù)
while(a%b!=0){ //判斷a除以b的余數(shù),如果為0則不進(jìn)入循環(huán),此時(shí)b為a和b大公約數(shù)
c=a%b; //求出a%b余數(shù)給c
a=b; //把上一次除數(shù)b變成下一次的被除數(shù)a
b=c; //把上一次的余數(shù)c作為除數(shù)賦值給b
}
cout<
大家覺(jué)得文章不錯(cuò)的話,別忘記點(diǎn)贊哦~~你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧
當(dāng)前名稱:P1888三角函數(shù)題解(用c++內(nèi)置-創(chuàng)新互聯(lián)
瀏覽路徑:http://aaarwkj.com/article42/cogeec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、Google、品牌網(wǎng)站制作、網(wǎng)站內(nèi)鏈、App設(shè)計(jì)、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
營(yíng)銷型網(wǎng)站建設(shè)知識(shí)