추적 테이블

추적 테이블(trace table)은 (알고리즘이 이 과정 중에 논리적 에러가 발생하는지를 확인하는 방식으로) 알고리즘 테스트에 사용된다. 이 테이블은 보통 다중 행렬 형식을 갖는다. 각 열은 변수를, 행은 알고리즘에 입력되는 각 숫자와 그 차후 값을 보여준다.

추적 테이블들은 일반적으로 학생들에게 프로그래밍을 가르칠 때 사용된다. 학생들에게 특정한 알고리즘이 어떻게 동작하고 알고리즘 실행 시의 거기에 대칭하는 프로세스를 가르치는데 필수적인 도구이다. 또한 응용 프로그램을 디버깅할 때 프로그래머가 어떤 에러가 왜 발생했는지를 쉽게 찾을 수 있도록 도와준다.

 예시 
int i, x = 0;
for (i = 1; i <= 10; i++) {
    x = i * 2;
}
 i x ? 0 1 2 2 4 3 6 4 8 5 10 6 12 7 14 8 16 9 18 10 20 11 20
이 예시는 알고리즘 과정 중 거기에 대칭하는 프로세스의 진행을 보여준다. x의 첫 값은 0이고 i는 정의되었지만 아직 값을 갖지 않으므로 처음 값은 모르는 상태다. 각 행씩 실행하다 보면 실행중인 소스 코드의 선언을 반영하여 i와 x의 값이 바뀐다. 새롭게 바뀌는 값들은 추적 테이블에 저장된다.

 같이 보기 
 알고리즘
 프로그래밍 언어
 디버그

 각주 
 http://www.comscigate.com/tutorial/KjellStyle/WilliamChen/trace1.html 
 https://web.archive.org/web/20060114171149/http://www.thevickerage.worldonline.co.uk/theteacher/alevel/assem/assem5.htm (Currently unavailable)
 https://web.archive.org/web/20070829175413/http://portal.newman.wa.edu.au/technology/12infsys/html/KWH2003/TraceTables.htm (Currently unavailable)

분류:디버깅