最大公约数:几个整数中公有的约数,叫做这几个数的公约数;其中最大的一个,叫做这几个数的最大公约数。
最小公倍数:几个自然数公有的倍数,叫做这几个数的公倍数,其中最小的一个自然数,叫做这几个数的最小公倍数。
最大公约数求法:辗转相除法
public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int a = scanner.nextInt(); int b = scanner.nextInt(); f(a, b); } public static void f(int a, int b) { while(true) { if(a == 0) { System.out.println(b); break; } int temp; temp = a; a = b % a; b = temp; } }
优化:(递归)
public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); System.out.println(gcd(a,b)); } public static int gcd(int a, int b) { if(a == 0) { return b; } return gcd(b%a, a); }
最小公倍数:其实就是两数相乘再除以他们的最大公约数。
public static int f(int a, int b) { return a * b / gcd(a, b); }