# include<stdio.h>
# define T 1
void findShare(int loadedNum1, int loadedNum2);

int main(void) {
 int num1, num2;
 printf("num1, num2 : ");
 scanf_s("%d %d", &num1, &num2);
 findShare(num1, num2);
 return 0;
}

void findShare(int loadedNum1, int loadedNum2) {
 int val1 = loadedNum1;
 int val2 = loadedNum2;
 int rem = 0; // 나머지
 int quo = 0; // 몫
 int temp = 0;
 
 if (val1 == val2) { // case __1
  printf("gcd(%d, %d) => %d \n", loadedNum1, loadedNum2, loadedNum2);
  return; // end
 }
 if (val1 < val2) {  // case __2
  temp = val2;
  val2 = val1;
  val1 = temp;
 }
 while (T) {
  quo = val1 / val2;
  rem = val1 % val2;
  if (rem == 0) {
   printf("gcd(%d, %d) => %d \n", loadedNum1, loadedNum2, val2);
   break;
  }
  else { // rem != 0
   val1 = val2;
   val2 = rem;
  }
 }
}

'언어 > c언어' 카테고리의 다른 글

beakJ  (0) 2017.01.21
BJ 2908  (0) 2017.01.16
deck  (0) 2017.01.08
숫자 -> 문자열 , 문자열 -> 숫자  (0) 2016.10.05
ver1 행렬 연산 + 메모리해제  (0) 2016.10.02