Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

둘 이상의(또는 배열) 숫자의 GCD용 Java 프로그램

<시간/>

다음은 2개 이상의 숫자의 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;
         }
      }
      return result;
   }
   public static void main(String[] args){
      int my_arr[] = { 7, 49, 177, 105, 119, 42};
      int no = my_arr.length;
      System.out.println("The GCD of the elements in the array is ");
      System.out.println(find_gcd(my_arr, no));
   }
}

출력

The GCD of the elements in the array is
1

Demo라는 클래스에는 두 개의 값을 취하는 기본 함수가 있습니다. 첫 번째 값이 0이면 두 번째 값이 출력으로 반환됩니다. 그렇지 않으면 두 요소의 최대 공약수를 계산하는 재귀 함수가 작성됩니다.

다음으로 배열과 다른 정수 값을 매개변수로 사용하는 또 다른 정적 함수가 정의됩니다. 배열의 첫 번째 요소는 'result'라는 변수에 할당되고 'for' 루프는 1에서 함수에 매개변수로 전달된 정수 값까지 요소를 반복합니다. 이 배열 요소와 결과에 대해 최대 공약수 함수가 호출됩니다. 이 출력은 '결과' 변수 자체에 할당됩니다. 'result'의 값이 1이면 출력은 1이고, 그렇지 않으면 'result'의 값이 반환됩니다.

메인 함수에서 배열 정수가 정의되고 배열의 길이가 특정 값에 할당됩니다. 최대 공약수 함수는 배열 요소와 길이에 대해 호출됩니다. 관련 데이터가 콘솔에 표시됩니다.