function getGCD(a, b) {
// b가 0이 되면 종료 (b는 r을 갖게되므로, a%b가 0이 나올 때까지 반복)
while (b > 0) {
// a와 b를 나눈 나머지 값을 r에 저장
let r = a % b;
// a에 b저장
a = b;
// b는 a%b의 나머지인 r 저장
b = r;
}
// b가 0이 되어서 반복이 종료되면, a 리턴
return a;
}
예시1) a가 더 큰 수일 경우 (a=10, b=6)
// r = 10 % 6 = 4
// a = 6
// b = 4
// r = 6 % 4 = 2
// a = 4
// b = 2
// r = 4 % 2 = 0
// a = 2
// b = 0
// => a 리턴
예시2) b가 더 큰 수일 경우 (a=6, b=10)
// r = 6 % 10 = 6
// a = 10
// b = 6
=> a와 b의 위치가 바뀜
// r = 10 % 6 = 4
// a = 6
// b = 4
// r = 6 % 4 = 2
// a = 4
// b = 2
// r = 4 % 2 = 0
// a = 2
// b = 0
// => a 리턴