Java 求两个数的公因数程序

javaobject oriented programmingprogramming更新于 2025/7/8 13:00:17

以下是 Java 中求两个数的公因数的示例 −

示例

public class Demo{
   static int find_gcd(int val_1, int val_2){
      if (val_1 == 0)
      return val_2;
      return find_gcd(val_2%val_1,val_1);
   }
   static int common_divisors(int val_1,int val_2){
      int no = find_gcd(val_1, val_2);
      int result = 0;
      for (int i=1; i<=Math.sqrt(no); i++){
          if (no%i==0){
            if (no/i == i)
             result += 1;
              else
               result += 2;
         }
      }
      return result;
   }
    public static void main(String args[]){
      int val_1 = 68, val_2 = 34;
      System.out.println("两个数之间的公约数是");
      System.out.println(common_divisors(val_1, val_2));
   }
}

输出

两个数的公约数为
4

名为 Demo 的类包含一个静态函数,该函数接受两个值并使用递归返回最大公约数。另一个函数调用此最大公约数函数,并遍历 1 到最大公约数的平方根之间的数字。

接下来,条件是迭代值的数字模数应等于零,接下来,除以迭代值的数字应等于迭代值,然后将结果(最初初始化为 0)增加 1。如果不满足条件,则将结果增加 2。在主函数中,初始化两个值,并在其上调用上述函数。相关结果显示在屏幕上。


相关文章


有用资源