2609 - 최대 공약수와 최소 공배수

업데이트:

BAEKJOON - 2609

문제

두 개의 자연수를 입력받아 최대 공약수와 최소 공배수를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에는 두 개의 자연수가 주어진다. 이 둘은 10,000이하의 자연수이며 사이에 한 칸의 공백이 주어진다.

출력

첫째 줄에는 입력으로 주어진 두 수의 최대 공약수를, 둘째 줄에는 입력으로 주어진 두 수의 최소 공배수를 출력한다.

예제 입력

1
24 18

예제 출력

1
2
6
72

Java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.util.Scanner;

public class Main {
	public static int gcd(int a, int b) {
		if (b == 0) return a;
		else return gcd(b, a % b);
    }
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		int b = sc.nextInt();
		sc.close();
		int gcd = gcd(a, b);
		System.out.println(gcd);
		System.out.println(a * b / gcd);
	}
}