Notice
Recent Posts
Recent Comments
Dharma
수학적 귀납법과 프로그래밍 본문
프로그래밍을 하다보면 수학적 귀납법의 원리를 이용하여 함수가 제대로 작성 됐는지 검증하면 편할 때가 많습니다.
수학적 귀납법
자연수 n과 관련된 명제 P(n)을 증명하려고 할 때, 다음 두 가지만 증명하면 된다.
1) n=1일 때, 참이다.
2) n=k일 때, 참이라고 가정하면 n=k+1일 때도 참이다.
1)과 2)에 따라서 모든 자연수일때 명제가 성립한다.
살아오면서 수학과 프로그래밍에 대해서는 별다른 연관성을 못 느끼고 있었습니다. '수학적 사고나 논리력 증대가 프로그래밍에 도움이 되는 것이겠지' 정도로만 치부하고 살았는데, 최근에 결국 프로그램의 대부분이 아무리 많은 데이터를 다루더라도 index 형태로 처리하게 된다면, 함수를 작성할 때 귀납법을 고려해서 작성하면 좋구나 하고 느낄 때가 있었습니다.
함수를 작성할 때 위에 쓰여진 귀납법 형태대로 따르면 n=k 일 때 제대로 돌아간다고 생각하고 작성해 줍니다. 그리고 n=1 일때 실제로 맞게 돌아가는지 확인을 하고 n=k+1 일 때 제대로 돌아가는지 체크를 해주면 깔끔하게 작성이 됩니다.
딱히 방법이랄 것은 아니지만, '맞아 이런거였지?' 정도로만 인식해도 함수를 잦은 디버그 없이 작성할 수 있게 되는 요령이 됩니다.