--- tags: DICE C --- 22-10 自主學習 === > [name=CHAWTeam] 目錄:[DICE C語言程式破解](/@CHAWTeam/DiceC) 題目 --- ```! 請自訂函式GCD()、LCM(),求出兩數的最大公因數及最小公倍數。 呼叫GCD()求最大公因數、LCM()求最小公倍數。 請讀取到資料結尾。分別印出最大公因數及最小公倍數之結果,格式見範例輸出。 範例輸入: 2 4 34 51 範例輸出: GCD(2,4):2 LCM(2,4):4 GCD(34,51):17 LCM(34,51):102 ``` 程式碼 --- ```c= #include <stdio.h> int gcd(int a, int b) { int max; for (int i = 1; a >= i && b >= i; i++) { if (a % i == 0 && b % i == 0) { max = i; } } return max; } int lcm(int a, int b) { return a * b / gcd(a, b); } int main() { int a, b; for (int i = 0; i < 2; i++) { scanf("%d %d", &a, &b); printf("GCD(%d,%d):%d\n", a, b, gcd(a, b)); printf("LCM(%d,%d):%d\n", a, b, lcm(a, b)); } return 0; } ``` 執行 --- ### 輸入 ```! 2 4 34 51 ``` ### 輸出 ```! GCD(2,4):2 LCM(2,4):4 GCD(34,51):17 LCM(34,51):102 ``` --- [查看我們在HackMD上的所有筆記](/@CHAWTeam) 目錄:[DICE C語言程式破解](/@CHAWTeam/DiceC) --- {%hackmd Iiu5mOixR7yWkPHKCkabBg %} <iframe class="LikeCoin" height="235" src="https://button.like.co/in/embed/chawteam/button?referrer=https://hackmd.io/@CHAWTeam/DiceC-22-10" width="100%"></iframe> --- {%hackmd i1nMRrZcTFmTvoF897K9zg %}