컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post 매스매티카 Mathematica, 최대공약수, 최소공배수 구하기 함수; GCD LCM어안렌즈 사진 갤러리; Fisheye Lens Gallery FlickrPython 파이썬] 최소공배수 구하기 함수; LCM자바 Java, int를 unsigned 형 long으로 변환 캐스팅(Typecasting...매스매티카 Mathematica, 합계;시그마;Sigma 함수, 1에서 100까지 더하기HTML 웹페이지에 수학 공식 표현 방법; 시그마 기호 입력, Sigma 문자수학 기호] 시그마 Sigma (∑ 합) 문자, 표준편차 기호(σ) 입력 방법; Stand...C언어] 합계 구하기+시그마(Sum) 공식; 특정 범위 정수 숫자에서C언어] 1에서 100까지 더하기 소스 + 공식; for AddC 언어] signed int 를, unsigned int 로 상호 변환, 캐스팅

자바 Java, 최소공배수 구하기 함수; LCM; Least Common Multiple

Friday, April 20, 2007

자바에서, 최소공배수를 구하는 방법입니다. 아래 예제의 "public static long lcm(long a, long b)" 메서드(함수)를 사용합니다. 그런데 최소공배수를 구하려면 최대공약수도 구해야 하기에, 아래의 gcd() 메서드도 필요합니다.

최소 공배수 계산 예제 소스


소스 파일명: Example.java
public class Example {
  public static void main(String[] args) {

    System.out.println(lcm(4, 6));    // 12
    System.out.println(lcm(21, 6));   // 42
    System.out.println(lcm(-5, -4));  // 20
    System.out.println(lcm(-9, 2));   // 18
    System.out.println(lcm(0, 0));    // 0

    // 세 숫자의 최소공배수 구하기
    long result = lcm(45, lcm(120, 75));
    System.out.println(result);       // 1800


    // 네 숫자의 최소공배수 구하기
    result = lcm(112, lcm(113, lcm(114, 119)));
    System.out.println(result);       // 12263664
  }



  // 최소 공배수 계산 메서드
  // 최소공배수는 엄청나게 큰 숫자가 나올 수도 있기에
  // long형으로 다루어야 합니다.
  public static long lcm(long a, long b) {
    int gcd_value = gcd((int)a, (int)b);

    if (gcd_value == 0) return 0; // 인수가 둘다 0일 때의 에러 처리

    return Math.abs( (a * b) / gcd_value );
  }


  // 최대 공약수 계산 함수; 최소 공배수 계산에 필요함
  // 최대 공약수는 그리 큰 숫자가 나오지 않기에 int형으로
  public static int gcd(int a, int b) {
    while (b != 0) {
      int temp = a % b;
      a = b;
      b = temp;
    }
    return Math.abs(a);
  }


}



▶▶ Java 자바] 최대 공약수 구하기 함수; gcd, Greatest Common Divisor Method


최소공배수 계산기 (온라인 버전): ▶▶ 최소공배수 계산기; LCM 구하기 Calc



0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top