자격증/정보처리기사 실기

정처기 실기 코드 문제로 30~40점 버는 법 — 변수표 그리기가 전부입니다

공감(공부하는감자) 2026. 6. 12. 10:36

안녕하세요, 공부하는 감자입니다 🥔

정처기 실기 20문항 중에 코드 출력 문제가 보통 4

6문제, 배점으로 치면 30

40점입니다. 합격선이 60점이니까 여기를 날리면 암기 문제를 다 맞혀도 아슬아슬해요.

반대로 코드만 안정적으로 잡으면 합격 확률이 확 올라갑니다. 암기는 운이 좀 타지만 코드는 패턴이라 연습한 만큼 나오거든요.

미리 말씀드리면, 코딩을 잘할 필요는 없습니다. 문제는 "주어진 코드의 실행 결과를 적으시오"가 거의 전부고, 직접 작성하는 문제는 드물어요.

필요한 건 코딩 실력이 아니라, 변수 값의 변화를 종이에 적는 훈련입니다.

세 언어가 다 나옵니다 (고를 수 없어요)

언어별 출제 경향을 먼저 보겠습니다.

언어 빈도 주로 나오는 것
C 매회 1~2문제 포인터, 배열, 구조체
Java 매회 1~2문제 클래스, 상속, 오버라이딩
Python 매회 1~2문제 리스트, 슬라이싱, 딕셔너리

문제마다 언어가 정해져 있고 선택권이 없어서, 셋 다 읽을 줄은 알아야 합니다. 공부 순서는 Python(문법이 직관적) → Java(클래스 개념만 잡으면 됨) → C 포인터(가장 어려우니 마지막 집중 투자)를 추천해요.

유형 1 — 변수 추적: 줄마다 변수표 갱신

x = 4
y = x + 2
x = y * 2
print(x, y)

답은 12 6. 이런 문제는 시험지 여백에 x=? y=? 표를 만들어 줄마다 갱신하면 끝납니다. x = y는 y의 값을 x에 넣는다는 대입 방향, C/Java의 ++ 전위/후위 차이만 조심하세요.

유형 2 — 반복문: 표를 크게 그리세요

int t = 0;
for(int i = 1; i <= 4; i++) {
    t += i * 2;
}
printf("%d", t);
회차 i t
1 1 2
2 2 6
3 3 12
4 4 20

답은 20. 중첩 for문이 나오면 바깥 한 바퀴마다 안쪽을 전부 돌려야 하니까 표를 처음부터 넉넉하게 그리는 게 좋습니다. 머릿속으로만 돌리다가 한 줄 빼먹는 게 코드 문제에서 가장 흔한 실수예요.

유형 3 — 재귀: 종료 조건 찾고 역추적

def f(n):
    if n <= 1:
        return 1
    return n * f(n - 1)
print(f(5))
f(5) = 5 * f(4)
f(4) = 4 * f(3)
f(3) = 3 * f(2)
f(2) = 2 * f(1) = 2
→ f(3) = 6, f(4) = 24, f(5) = 120

답은 120. 재귀에서 틀리는 원인은 거의 항상 종료 조건을 안 보고 내려가는 것이라, if n <= 1부터 확인하는 습관을 들이세요.

유형 4 — 슬라이싱과 포인터

Python 슬라이싱은 거의 매회 나옵니다. b = [10, 20, 30, 40, 50]이라면,

  • b[2:4][30, 40] (끝 인덱스 미포함)
  • b[::-1][50, 40, 30, 20, 10] (역순)
  • b[-2]40 (뒤에서 두 번째)

C 포인터는 "주소를 저장하는 변수"라는 정의에 화살표 그림을 더하면 풀립니다. int m = 8; int *p = &m; *p = 15; 후에 m을 출력하면 15예요.

p가 m을 가리키는 화살표를 그려놓고 보면 헷갈릴 게 없습니다.

언어별로 자주 까는 함정

  • C7 / 23(정수 나눗셈), char c = 'B'%d로 출력하면 66(ASCII), 배열 {4, 5, 6}에서 *(a + 2)6
  • Java"hello".length()5, int a = 3; System.out.println(a++);3(출력 먼저, 증가는 나중), superthis 구분
  • Python7 // 23, 7 % 21, "ok" * 3okokok, 그리고 append([4,5])는 리스트 통째로 붙고 extend([4,5])는 원소를 풀어서 붙는다는 차이

시간 배분 — 한 문제 5~7분

150분에 20문항이니 코드 6문제에 40분 정도가 적정선입니다. 3분 안에 감이 안 오는 문제는 일단 넘기고 암기 문제를 먼저 끝낸 뒤 돌아오세요.

돌아와서 차분히 변수표를 그리면 의외로 풀리는 경우가 많았습니다.

연습은 기출 코드 문제 20~30개를 손으로 풀어보는 게 기본인데, 기출을 다 돌고 새 문제가 필요해지면 문어CBT 같은 무료 CBT도 있어요. 저는 출퇴근길에 폰으로 몇 문제씩 풀었습니다.

 

SQLD·정처기·컴활·ADsP 무료 CBT 모의고사

기출 변형 문제, 자동 채점, 회차별 실력 추적까지 가입 없이 바로 풀어보세요.

sqldpass.com

코드 문제는 재능이 아니라 손 운동입니다.

종이에 적으면서 푸는 습관만 잡히면 점수가 가장 예측 가능한 영역이에요.