---
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 %}