Algorithm/BAEKJOON

[ C / C++ ] 백준 2609 최대공약수와 최소공배수

곽수진 2022. 3. 15. 18:32
반응형

문제

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

 

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>

int gcd(int a, int b)
{
	int num = 1, min, gcd = 1;
	min = a < b ? a : b;

	while (num <= min)
	{
		if (a % num == 0 && b % num == 0)
			gcd = num;
		num += 1;
	}
	return gcd;
}


int main() {

	int a, b;
	scanf("%d%d", &a, &b);
	printf("%d\n%d\n", gcd(a, b), (a * b) / gcd(a, b));
}
반응형