概念
(1)最大公约数:几个数共有的约数,为几个数的公约数,其中最大的一个叫做这几个数的最大公约数。
例如:
12的公约数为:1,2,3,4,6,12
18的公约数为:1,2,3,6,9,18
12和18公有约数为:1,2,3,6.其中最大的公约数也就是共有约束最大的为:6
(2)最小公倍数:几个数公有的倍数,叫做这几个数的公倍数,其中最小的一个,叫做几个数的最小公倍数
例如:
12的倍数有:12,24,36,48,60,72,84.。。
18的倍数有:18,36,54,72,90.。。
12和18的公有倍数为:36,72。。。其中36为最小的公倍数。
最大公约数和最小公倍数
方法1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入第一个数:"); int a = sc.nextInt(); System.out.println("请输入第二个数:"); int b = sc.nextInt(); int min = Math.min(a,b); for (int i = min;i>0;i--){ if (a%i==0 && b%i==0){ System.out.println("最大公约数:"+i); break; } } int max = Math.max(a,b); for (int i = max;i<=a*b;i++){ if (i%a==0 && i%b==0){ System.out.println("最小公倍数:"+i); break; } }
} }
|
方法2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入第一个数:"); int a = sc.nextInt(); System.out.println("请输入第二个数:"); int b = sc.nextInt(); int p = a*b; while (b!=0){ int t = a%b; a = b; b =t; } System.out.println("最大公约数为:"+a); System.out.println("最小公倍数为:"+p/a); } }
|