최소공배수보다 최대공약수가 정말 많이 쓰인다. 어차피 최대공약수를 알 수 있으면 최소공배수도 알 수 있다. 즉, 쓰이는 곳이 많다. 최소공배수 구하기, 최대공약수 구하기, 기약분수 구하기 등 여기서 만능공식이 있으니 그것이 바로 유클리드 호제법이다. 기본 형태는 이렇다. 수학자가 증명한 것이 참이라고 가정하고 이용한다. 공학자는 증명보다는 활용을 하기에 하지만 굳이 증명하고 싶다면 말리지는 않는다. 즉, 작은 것으로 치환할 수 있다는 말이다. 만약 gcd함수를 불러온다면.. 그것보다 작은함수를 불러오는 건가..? 재귀같네?? 라고 생각하면 생각이 깊은 사람 굿 아무튼 C++에서는 여러가지 방법으로 구현할 수 있다. 일반적으로 a>b를 가정하고 만들긴한다. 하지만 굳이 a>b를 가정해야하느냐? 라는 사람이..