高考申論題
112年
[統計] 資料處理
第 二 題
📖 題組:
四、所謂互質為兩個或兩個以上的整數彼此之間的最大公因數是1,而最簡分數為分子和分母互質的分數。
四、所謂互質為兩個或兩個以上的整數彼此之間的最大公因數是1,而最簡分數為分子和分母互質的分數。
📝 此題為申論題,共 2 小題
小題 (二)
使用上述函數,寫一個C語言程式,來找出一最簡分數,其分子與分母的和為70,且該分數化為小數並四捨五入後為0.6。(15分)
思路引導 VIP
這是一道結合數學邏輯與程式控制迴圈的應用題。我們需要設計一個主程式 (main),透過 for 迴圈遍歷可能的分子 x(範圍為 1 到 69),則分母為 y = 70 - x。迴圈內有三個檢核點:(1) x 與 y 是否互質(呼叫前一題的 coprime 函式)。(2) 該分數化為小數(需強制轉型為 float)。(3) 數值四捨五入至小數點第一位是否等於 0.6。在 C 語言中處理浮點數四捨五入的經典手法是「乘以10加0.5後取整數」,再驗證是否等於 6。
小題 (一)
請使用C語言完成函數int coprime (int a, int b),來檢查正整數a與b是否互質。如果互質,則函數回傳值為1,反之回傳0。(10分)
思路引導 VIP
本題考查基礎演算法的程式實作能力。核心邏輯是求兩個整數的「最大公因數 (GCD)」,實務上最標準的解法為「輾轉相除法 (Euclidean algorithm)」。計算出 GCD 後,判斷其是否等於 1,若等於 1 則回傳 1,否則回傳 0。