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

두 숫자의 공약수를 위한 Java 프로그램

<시간/>

다음은 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("The common divisors between the two numbers is ");
      System.out.println(common_divisors(val_1, val_2));
   }
}

출력

The common divisors between the two numbers is
4

Demo라는 클래스에는 두 개의 값을 사용하고 재귀를 사용하여 최대 공약수를 반환하는 정적 함수가 포함되어 있습니다. 다른 함수는 이 최대공약수 함수를 호출하고 1과 최대공약수의 제곱근 사이의 숫자를 반복합니다.

다음으로 조건은 반복된 값의 계수 계수가 0과 같아야 하고 다음으로 반복된 값으로 나눈 숫자가 반복된 값과 같아야 한다는 것입니다. 그러면 결과(초기에 0으로 초기화됨)는 다음과 같이 증가합니다. 1. 조건이 만족되지 않으면 결과가 2씩 증가합니다. 메인 함수에서는 두 개의 값을 초기화하고, 이에 위의 함수를 호출합니다. 해당 결과가 화면에 표시됩니다.