1、最大公約數and最小公倍數

import java.util.Scanner;
public class MultipleAndDivisor {
public static void main(String[] args){
//建立一個物件
Scanner scan = new Scanner(System.in);
//輸入兩個整數
System.out.println("請輸入第一個整數");
int num1 = scan.nextInt();
System.out.println("請輸入第二個整數");
int num2 = scan.nextInt(); int min = 1;
int max = 1;
int divisor = 1; //divisor儲存最大公約數
int multiple = 1; //multiple儲存最小公倍數 if(num1 > num2){ //將大的數值交給max,小的交個min。
max = num1;
min = num2;
}else if(num1 < num2){
max = num2;
min = num1;
}else{
divisor = num1; //兩數相等時,最大公約數==最小公倍數
multiple = num1;
} //最大公約數
//取小的那個值,遞減迭代
for (int i = min; i >= 1; i--) {
if(num2 % i ==0 && num1 % i ==0){
divisor = i;
break;
}
}
//最小公倍數
multiple = max; //假設最小公倍數為max本身
for (int i = 1; multiple <= num1 * num2; i++){//公倍數
multiple = max * i; //倍數迭代
if(multiple % min == 0){
break;
}
}
System.out.println(num1 + "和" + num2 + "的最大公約數是" + divisor + ",最小公倍數是" + multiple);
}
}

//執行示例
請輸入第一個整數
12
請輸入第二個整數
20
12和20的最大公約數是4,最小公倍數是60