public class Gongyueshu
{
public static void main(String[] args)
{
//從控制臺輸入兩個數據
int m = Integer.parseInt(args[0]);
int n = Integer.parseInt(args[1]);
int y = 1 ;
int b = 1;
if (m > 0 && n >0)
{
//先判定這兩個數是否為倍數關系,如果是則小數為最大公約數,大數為最小公倍數
if (m % n == 0 || n % m? == 0)
{
if (m >= n)
{
System.out.println("最大公約數為" + n);
System.out.println("最小公倍數為" + m);
}
else
{
System.out.println("最大公約數為" + m);
System.out.println("最小公倍數為" + n);
}
}
//從2開始循環尋找兩數共同的因子,每找到一個即乘以公約數變量y與公倍數變量b
//并把原來的兩個數除以共同的因子,
//并把i置為1(continue出來要執行for的結束語句i++,所以下一次循環i依然從2開始)下一次循環
else
{
for (int i = 2; i <= m ; i ++ )
{
if (m % i == 0 && n % i == 0)
{
y *= i;
b *= i;
m /= i;
n /= i;
i = 1;
continue;
}
else if(m == i && (m % i != 0 || n % i != 0))
{
b = b * m * n;
System.out.println("最大公約數為" + y);
System.out.println("最小公倍數為" + b);
}
}
}
}
else
{
System.out.println("輸入錯誤");
}
}
}