프로그래밍 문제는 코드를 많이 읽었다고 빨라지지 않습니다. 실행 순서를 건너뛰지 않고 변수의 현재 값, 다음에 실행될 문장, 화면에 출력되는 값을 분리해서 적는 습관이 있어야 합니다. 언어가 달라도 이 세 가지를 추적하는 방법은 거의 같습니다.
실행 전에 입출력 지점과 변경 지점을 표시합니다
처음부터 머릿속으로 실행하지 마세요. 입력값, 반복문의 시작과 종료, 조건 분기, 함수 호출, 배열 변경, 출력문에 표시를 먼저 합니다. 출력문이 여러 개라면 줄바꿈과 출력 순서도 별도로 적습니다.
반복문은 변수표 한 줄이 실행 한 번입니다
중첩 반복문은 바깥쪽 회차가 바뀔 때 가로선을 그으세요. 전위·후위 증감 연산자는 표현식에서 사용된 값과 연산이 끝난 뒤 저장된 값을 따로 적어야 실수를 줄일 수 있습니다.
언어 이름보다 평가 순서와 자료형을 확인합니다
“C는 포인터, Java는 상속, Python은 슬라이싱”처럼 주제만 외우면 변형 문제에 약합니다. 각 문장이 언제 평가되고 어떤 값이 저장되는지 설명할 수 있어야 합니다.
최종 답은 실행 흔적과 분리해 깔끔하게 씁니다
계산 과정에는 변수표를 충분히 쓰되 답안에는 문제에서 요구한 형식만 남깁니다. 출력 결과를 묻는다면 공백과 줄바꿈을 포함한 최종 출력만, 특정 변수값을 묻는다면 변수명과 값을 대응시켜 적습니다.
- 순서실행하지 않은 분기나 건너뛴 반복 회차가 있었는가
- 자료형정수·실수·문자열 변환과 나눗셈 결과를 잘못 계산했는가
- 상태함수 호출이나 객체 변경 뒤의 값을 이전 값으로 사용했는가
- 표기출력값은 맞지만 공백·개행·순서를 다르게 적었는가
매일 짧은 코드 세 개를 손으로 추적합니다
- 1문제조건문과 연산자 중심의 짧은 코드
- 1문제반복문과 배열·리스트가 함께 나오는 코드
- 1문제함수 호출, 객체, 상속 중 한 가지가 포함된 코드
- 복습틀린 문제는 답을 외우지 말고 틀린 실행 지점을 한 줄로 기록
시간을 재는 것은 정확하게 추적할 수 있게 된 뒤에 시작하세요. 처음부터 속도만 높이면 잘못된 머릿속 실행 습관이 굳습니다. 전체 계획을 다시 잡고 싶다면 정보처리기사 실기 공부법을 함께 보세요.