PTA | 程序設(shè)計(jì)類實(shí)驗(yàn)輔助教學(xué)平臺(tái)
創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括太湖網(wǎng)站建設(shè)、太湖網(wǎng)站制作、太湖網(wǎng)頁(yè)制作以及太湖網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,太湖網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到太湖省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!我們先看一下這道題
我們的先創(chuàng)建變量來(lái)一個(gè)個(gè)接受數(shù)據(jù),然后我們分為三步:
1.將輸入的數(shù)據(jù)全部進(jìn)行通分
long long int sum_a = 0;
long long int sum_b = 1;
long long int a, b = 0;
scanf("%lld/%lld", &a, &b);
sum_a *= b;
sum_a += sum_b * a;
sum_b *= b;
我們將輸入的分?jǐn)?shù)的分子看成a,分母看成b
2.寫一個(gè)函數(shù)求出分子和分母的大公約數(shù),進(jìn)行化簡(jiǎn)。
求大公約數(shù),我們用輾轉(zhuǎn)相除法,可以用兩種方法實(shí)現(xiàn)
(1)非遞歸的方式:代碼如下
long long int gcd(long long int a, long long int b)
{
int t = 0;
while (t=a%b)
{
a = b;
b = t;
}
return b;
}
可以參考我往期的博客輾轉(zhuǎn)相除法求兩個(gè)數(shù)的大公約數(shù)_GO1ING的博客-博客
(2)用遞歸的方法:這樣可以節(jié)省代碼量,但是思路是一樣
long long int gcd(long long int a, long long int b)
{
return b ? gcd(b, a % b) : a;
}
3.按要求進(jìn)行輸出。
在最后我們要注意題目的輸出要求,也是本題的易錯(cuò)點(diǎn)。
if (sum_a % sum_b == 0)
{
printf("%lld", sum_a / sum_b);
}
else if (sum_a< sum_b)
{
printf("%lld/%lld", sum_a, sum_b);
}
else
printf("%lld %lld/%lld", sum_a / sum_b, sum_a%sum_b, sum_b);
return 0;
最后我們是完整代碼:
long long int gcd(long long int a, long long int b)
{
return b ? gcd(b, a % b) : a;
}
int main()
{
long long int t = 0;
long long int sum_a = 0;
long long int sum_b = 1;
long long int n = 0;
scanf("%d", &n);
for (int i = 0; i< n; i++)
{
long long int a, b = 0;
scanf("%lld/%lld", &a, &b);
sum_a *= b;
sum_a += sum_b * a;
sum_b *= b;
t = gcd(sum_a, sum_b);
sum_a /= t;
sum_b /= t;
}
if (sum_a % sum_b == 0)
{
printf("%lld", sum_a / sum_b);
}
else if (sum_a< sum_b)
{
printf("%lld/%lld", sum_a, sum_b);
}
else
printf("%lld %lld/%lld", sum_a / sum_b, sum_a%sum_b, sum_b);
return 0;
}
你是否還在尋找穩(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)查看詳情吧