笔试题 ----求两个整数的最大公约数和最小公倍数
使用辗转相除法可以快速的实现求最大公约数,而最小公倍数可以通过最大公约数求出。
import java.util.Scanner;
/**
* 求两个整数的最大公约数和最小公倍数
* @author LENOVO
*
*/
public class demo4 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入一个数:");
int a = s.nextInt();
System.out.println("请输入一个数:");
int b = s.nextInt();
int m = max(a,b);
System.out.println("最大公约数为:" + m);
int n = min(a,b);
System.out.println("最小倍数为:" + n);
}
private static int max(int a, int b) {
if(a<b) {
int temp = a;
a = b;
b = temp;
}
if (a % b == 0) {
return b;
}
return max(b, a%b);
}
private static int min(int a, int b) {
return a*b/max(a,b);
}
}