1.
最小公倍数(Least Common Multiple,缩写L.C.M.),如果有一个自然数a能被自然数b整除, 则称a为b的倍数,b为a的约数,对于两个自然数来说,指该两数共有倍数中最小的一个。计算最小公倍数时,通常会借助最大公约数来辅助计算。 就是说能够整除一个整数的整数称为其的约数(如5是10约数);1. 5.10能够被一个整数整除的整数称为其的倍数(如10是5的倍数);5 .10
2.
分解质因数,两个数的公因数和各自的质因数相乘。 20的分解质因数:20=2×2×5。 15的分解质因数:15=3×5。 因为20的分解质因数和15的分解质因数含有一个公共的5,所以这个5在最后求最小公倍数的时候只出现一次。 即15和20的最小公倍数等于:2×2×3×5=60。
package booksTest;import java.util.Scanner;public class p54_3_18 {public static void main(String[] args) {/*题目要求从键盘输入两个整数,计算这两个数的最小公倍数和最大公因数并输出最小公倍数(Least Common Multiple,缩写L.C.M.),如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数,对于两个自然数来说,指该两数共有倍数中最小的一个。计算最小公倍数时,通常会借助最大公约数来辅助计算。就是说能够整除一个整数的整数称为其的约数(如5是10约数);1. 5.10能够被一个整数整除的整数称为其的倍数(如10是5的倍数);5 .10*///1.获取从键盘键入的两个整数Scanner sc = new Scanner(System.in);System.out.println("请输入一个整数");int number = sc.nextInt();System.out.println("请再次输入一个整数");int number1 = sc.nextInt();//求number和number1的最大公约数int gct = 1;//1本身是一个公约数 还是最小的int k = 2;//假设k=2 循环k值 直到<=输出的两个数为止int sum = 1;while (k <= number && k <= number1 ){if(number % k == 0 && number1 % k == 0)gct = k;k++;}System.out.println(gct);//2.最小公倍数/*分解质因数,两个数的公因数和各自的质因数相乘。20的分解质因数:20=2×2×5。15的分解质因数:15=3×5。因为20的分解质因数和15的分解质因数含有一个公共的5,所以这个5在最后求最小公倍数的时候只出现一次。即15和20的最小公倍数等于:2×2×3×5=60。*/System.out.println((number/gct)*(number1/gct)*gct);}
}