用于两个以上数字(或数组)的 GCD 的 Java 程序

javaobject oriented programmingprogramming更新于 2025/7/9 4:28:17

以下是用于两个以上数字的 GCD 的 Java 程序 −

示例

public class Demo{
   static int gcd_of_nums(int val_1, int val_2){
      if (val_1 == 0)
      return val_2;
      return gcd_of_nums(val_2 % val_1, val_1);
   }
   static int find_gcd(int arr[], int no){
      int result = arr[0];
      for (int i = 1; i < no; i++){
         result = gcd_of_nums(arr[i], result);
         if(result == 1){
            return 1;
         }
      }
      返回结果;
   }
   public static void main(String[] args){
      int my_arr[] = { 7, 49, 177, 105, 119, 42};
      int no = my_arr.length;
      System.out.println("数组中元素的最大公约数为");
      System.out.println(find_gcd(my_arr, no));
   }
}

输出

数组中元素的 GCD 为
1

名为 Demo 的类包含一个接受两个值的主函数。如果第一个值为 0,则返回第二个值作为输出。否则,编写一个递归函数来计算两个元素的最大公约数。

接下来,定义另一个静态函数,该函数接受一个数组和另一个整数值作为参数。数组的第一个元素被分配给一个名为 ‘result’ 的变量,并且 ‘for’ 循环迭代从 1 到作为参数传递给函数的整数值的元素。在此数组元素和结果上调用最大公约数函数。此输出被分配给 ‘result’ 变量本身。如果 ‘result’ 的值为1,则输出1,否则返回‘result’的值。

在主函数中,定义一个数组整型,并将数组的长度赋为特定值。对数组元素和长度调用最大公约数函数。相关数据显示在控制台上。


相关文章


有用资源