本帖最後由 陳楷翔 於 2023-7-29 19:11 編輯
1. 題目說明:
請依下列題意進行作答,使輸出值符合題意要求。
2. 設計說明:
請撰寫一程式,讓使用者輸入兩個正整數a、b,分別輸出a、b的最大公因數和最小公倍數。
提示:若使用 Java 語言答題,請以「JP」開頭命名包含 main 靜態方法的 class,評測系統才能正確評分。
3. 輸入輸出:
輸入說明
兩個正整數
輸出說明
最大公因數和最小公倍數
範例輸入
12
18
範例輸出
6
36
迴圈解題:- #include<bits/stdc++.h>
- using namespace std;
- int a, b, c, d;
- int gcd(int a, int b)
- {
- while(a%b!=0)
- {
- int tmp=a%b;
- a=b;
- b=tmp;
- }
- return b;
- }
- int main()
- {
- cin>>a>>b;
- c=gcd(a, b);
- d=(a*b)/c;
- cout<<c<<endl;
- cout<<d<<endl;
- return 0;
- }
複製代碼 遞迴解題:- #include<bits/stdc++.h>
- using namespace std;
- int a, b, c, d;
- int gcd(int a, int b)
- {
- if(a%b==0)
- return b;
- else
- return gcd(b,a%b);
- }
- int main()
- {
- cin>>a>>b;
- c=gcd(a, b);
- d=(a*b)/c;
- cout<<c<<endl;
- cout<<d<<endl;
- return 0;
- }
複製代碼 |