2017-11-08
阿新 • • 發佈:2017-11-08
ram pan span 最大公約數 div 約數和 std pri n)
Program:
求兩個數的最大公約數和最小公倍數(遞歸實現)
代碼如下:
1 package test; 2 3 4 public class TestDemo { 5 6 public static void main(String args[]) { 7 8 int num1 = 12; //數值1 9 int num2 = 16; //數值2 10 int maxCommon = 0; //最大公約數 11 12maxCommon = getMaxCommon(num1,num2); 13 14 System.out.println( num1 + "和" + num2 + "的最大公約數為:" + maxCommon ); 15 System.out.println( num1 + "和" + num2 + "的最小公倍數為:" + (num1 * num2 / maxCommon) ); 16 17 } 18 19 20 /* 21 * 利用遞歸求解最大公約數和最小公倍數 22 **/ 23 public static int getMaxCommon(int num1,int num2) { 24 25 if( num2 == 0 ) { //遞歸結束條件:num2(取余後的值)為0,即此時的num1(上一層遞歸的除數)為最大公約數 26 27 return num1; //返回被除數 28 }else { 29 30 return getMaxCommon(num2, num1 % num2); //遞歸 31 } 32 } 33 34 }
2017-11-08