#include <stdio.h>
int gdc(int ,int ); //최대공약수 함수 선언
int lcm(int ,int ); //최소공배수 함수 선언
int main(void)
{
int a,b; //두 정수
printf("두개의 정수를 입력이시오 : ");
scanf("%d%d",&a,&b);
printf("%d,%d의 최대공약수는 %d입니다.\n",a,b,gdc(a,b)); //함수사용하여 출력
printf("%d,%d의 최소공배수는 %d입니다.\n\n",a,b,lcm(a,b)); //함수사용하여 출력
return 0;
}
int gdc(int a,int b) //최대공약수를 반환하는 함수
{
int i,j;
int temp; //공약수를 저장할 변수
j = (a<b)?a:b; //둘중 작은수를 구함
for(i=1;i<=j;i++) {
if(a%i==0 && b%i==0)
temp = i;
}
return temp;
}
int lcm(int a,int b) //최소공배수를 반환하는 함수
{
int i,j;
int temp; //공배수를 저장할 변수
j = (a>b)?a:b; //둘중 큰수를 구함
for(i=j;;i++) {
if(i%a==0 && i%b==0){
temp = i;
break;
}
}
return temp;
}
'COMPUTING > C/C++' 카테고리의 다른 글
[C 예제] 비트연산 프로그램 (0) | 2010.08.03 |
---|---|
[C 예제] 10진법 정수를 입력하여 2진법,8진법 또는 16진법으로 변환하기 (0) | 2010.08.03 |
[C 예제] sin 그래프 그리기 (0) | 2010.08.03 |
[C 예제] 사용자 함수를 이용하여 복리계산 (0) | 2010.08.01 |
[C 예제] 문장을 입력하고 각 문자의 아스키 코드 출력 (0) | 2010.08.01 |