Java 程序查找任意两个整数的最小公倍数和最大公约数


2022年12月28日, Learn eTutorial
2656

为了编写一个查找最小公倍数和最大公约数的 Java 程序,我们必须从用户那里读取两个整数,并通过使用 `while 循环` 来计算最小公倍数和最大公约数。

什么是最小公倍数?

最小公倍数 (LCM) 指的是最小公倍数。两个整数 ab 的最小公倍数是能被 a 和 b 整除的最小正整数。

示例:10 和 12 的最小公倍数如下所示。

LCM(10,12) = 60

什么是最大公约数?

最大公约数 (HCF) 指的是最高公因数。两个整数 ab 的最大公约数是能同时整除 a 和 b 的最大正整数。

示例:10 和 12 的最大公约数如下所示。

HCF(10,12) = 2

如何实现 Java 程序来找出 HCF 和 LCM?

首先,我们必须声明类 LCM_HCF。然后声明变量。创建 Scanner 类的对象并将数字读入变量 ab。将 a 和 b 的值赋给临时变量 temp_a 和 temp_b。

使用条件 temp_b !=0 的 `while 循环` 查找 a,b 的 HCF

  • temp_b 中的值保存到 temp
  • temp_atemp_b 执行模运算并将结果保存在 temp_b
  • 将值 temp 移至 temp_a

循环成功执行后,数字的 HCF 将在变量 temp_a 中。

使用公式 ( a * b) / HCF 计算 LCM。然后使用 `System.out.println()` 显示 HCFLCM

算法

步骤 1:声明具有 public 修饰符的类 LCM_HCF

步骤 2:打开 main() 以启动程序,Java 程序执行从 main() 开始

步骤 3:声明整数变量 a, b, temp_a, temp_b, temp, HCF, LCM

步骤 4:将第一个数字读入变量 a

步骤 5:将第二个数字读入变量 b

步骤 6:赋值 temp_a = atemp_b = b

步骤 7:使用 `while 循环` 检查 temp_b!=0,然后赋值

               temp=temp_b

               temp_b=temp_a % temp_b

               temp_a=temp.

步骤 8:将 HCF 赋值为 temp_a

步骤 9:将 LCM 计算为 (a*b)/HCF

步骤 10:显示 HCFLCM

 

Java 源代码

                                          import java.util.Scanner;

public class LCM_HCF{
   public static void main(String args[]){
      int  a, b, temp_a, temp_b, temp, HCF, LCM;
      Scanner sc = new Scanner(System.in);

      System.out.println("Enter the first Number: ");
      a= sc.nextInt();
      System.out.println("Enter the Second Number: ");
      b= sc.nextInt();
      sc.close();

      temp_a = a;
      temp_b = b;

      while(temp_b != 0){
         temp = temp_b;
         temp_b = temp_a % temp_b;
         temp_a = temp;
      }

      HCF = temp_a;
      LCM = (a*b)/HCF;

      System.out.println("HCF = "+HCF);
      System.out.println("LCM =  "+LCM);
   }
}
                                      

输出

Enter the first Number: 5
Enter the Second Number: 10
HCF = 5
LCM =10