정보처리기사 · 실기

2020년 1회 정보처리기사 실기 기출 유형

답안을 직접 작성하고 정답과 비교해 보세요. 서술형 답안은 표현이 다를 수 있어 직접 확인합니다.

← 회차 목록

주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

20문항미확인 20문항

2020년 1회 주제 · 연습 1

테스트·품질관리

한 팀이 같은 테스트 데이터만 반복 사용하자 새 결함을 거의 발견하지 못했다. 테스트 사례와 입력값을 주기적으로 바꾸어야 한다는 테스트 원칙의 이름을 쓰시오.

정답·해설 보기

정답

살충제 패러독스

해설

동일한 테스트만 반복하면 그 테스트가 찾을 수 있는 결함만 확인하게 된다. 새로운 결함을 찾으려면 테스트를 검토하고 데이터를 갱신해야 한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 2

SQL·데이터베이스

쇼핑몰이 대량의 구매 이력에서 함께 구매되는 상품의 규칙과 숨은 패턴을 찾아 추천에 활용한다. 이러한 분석 기법의 이름을 쓰시오.

정답·해설 보기

정답

데이터 마이닝(Data Mining)

해설

데이터에서 유용한 패턴·상관관계·규칙을 발견하는 과정이다. 단순 검색이나 데이터 저장과 구별한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 3

네트워크·운영체제

통신 규약에서 ① 메시지의 필드 배치와 형식 ② 각 필드가 뜻하는 제어 정보 ③ 전송 순서와 속도를 각각 무엇이라 하는지 쓰시오.

정답·해설 보기

정답

① 구문(Syntax) ② 의미(Semantics) ③ 타이밍(Timing)

해설

구문은 형식, 의미는 해석과 동작, 타이밍은 시간과 순서에 관한 규칙이다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 4

소프트웨어 설계·구축

문서 작성자가 태그 이름을 정의할 수 있고, 여는 태그와 닫는 태그로 계층 구조를 표현하는 확장 가능한 마크업 언어를 쓰시오.

정답·해설 보기

정답

XML

해설

XML은 Extensible Markup Language이다. 데이터 구조를 표현하며, 미리 정해진 화면 표시 태그 중심의 HTML과 목적이 다르다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 5

소프트웨어 설계·구축

서버가 {"name":"Mina","active":true,"scores":[72,85]} 형태의 텍스트를 전송한다. 이 데이터 교환 형식의 이름을 쓰시오.

정답·해설 보기

정답

JSON

해설

JSON은 객체의 이름·값 쌍과 배열 등을 이용하는 텍스트 형식이다. 객체의 키는 큰따옴표로 감싼 문자열이다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 6

SQL·데이터베이스

아래 테이블에 다음 SQL을 실행했을 때 마지막 SELECT의 결과를 쓰시오. NULL은 결측값이며, 결과는 열을 공백으로 구분하고 행마다 줄을 바꾸어 적으시오.

Scores
idnameteamscorementor
1AriA61NULL
2BoraB561
3CianA611
4DaniBNULL2
5EvanA462
SELECT COUNT(*), COUNT(score), COUNT(DISTINCT score)
FROM Scores WHERE id <= 5;
정답·해설 보기

정답

5 4 3

해설

COUNT(*)는 행 수, COUNT(score)는 NULL이 아닌 점수 수, COUNT(DISTINCT score)는 NULL을 제외한 서로 다른 점수의 수를 센다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 7

네트워크·운영체제

다음 작업들이 준비 큐에 있다. HRN의 우선순위=(대기 시간+서비스 시간)/서비스 시간을 적용하여 가장 먼저 실행할 작업을 고르고 각 우선순위를 구하시오.

작업대기 시간서비스 시간
A155
B106
C207
정답·해설 보기

정답

먼저 실행: A A: 4.00 / B: 2.67 / C: 3.86

해설

각 비율을 계산한 뒤 가장 큰 값을 고른다. 반올림은 비교가 끝난 뒤 소수 둘째 자리에서 표시했다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 8

SQL·데이터베이스

트랜잭션 성질 중 ① 일부 단계가 실패하면 전체 작업을 취소하는 성질 ② 동시에 실행되는 작업이 서로의 미완료 중간 결과에 부당하게 간섭하지 않도록 하는 성질을 쓰시오.

정답·해설 보기

정답

① 원자성(Atomicity) ② 격리성(Isolation)

해설

원자성은 전부 수행 또는 전부 취소를 뜻한다. 격리성의 구체적인 보장 수준은 데이터베이스의 격리 수준에 따라 달라진다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 9

정보보안

공격자가 패킷의 출발지와 목적지 IP 주소 및 포트를 피해 시스템 자신의 값으로 같게 위조했다. 이러한 서비스 거부 공격의 이름을 쓰시오.

정답·해설 보기

정답

LAND 공격

해설

자기 자신과 통신하는 것처럼 조작한 패킷으로 시스템 자원을 소모시키는 공격 유형이다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 10

정보보안

128비트 길이의 메시지 다이제스트를 만들며, 충돌 취약성 때문에 보안 목적의 새 설계에는 권장되지 않는 해시 알고리즘을 쓰시오.

정답·해설 보기

정답

MD5

해설

MD5는 암호화·복호화 알고리즘이 아니라 해시 함수이다. 충돌 저항성이 필요한 서명 등의 용도로 사용하면 안 된다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 11

소프트웨어 설계·구축

독립적으로 수정하기 쉬운 모듈을 만들려 한다. 모듈 사이의 결합도와 모듈 내부의 응집도를 각각 높여야 하는지 낮춰야 하는지 쓰시오.

정답·해설 보기

정답

결합도는 낮추고, 응집도는 높인다.

해설

외부 모듈에 대한 의존은 줄이고 하나의 모듈 내부 요소는 하나의 목적에 집중하게 만든다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 12

프로그래밍 언어

다음 C 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. C11, ASCII 문자 집합을 기준으로 한다.

#include <stdio.h>

int main(void) {
    int a[] = {10, 5, 8, 6};
    for (int i=0; i<3; i++)
        for (int j=0; j<3-i; j++)
            if (a[j] > a[j+1]) {
                int t=a[j]; a[j]=a[j+1]; a[j+1]=t;
            }
    printf("%d %d %d %d", a[0], a[1], a[2], a[3]);
    return 0;
}
정답·해설 보기

정답

5 6 8 10

해설

인접한 두 값의 순서가 뒤집혀 있으면 교환하는 버블 정렬이다. 각 바깥 반복 후 큰 값이 오른쪽 끝에 확정된다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 13

프로그래밍 언어

다음 Java 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Java 21 기준이다.

public class Main {

    public static void main(String[] args) {
        int[] values={7,9,11,13};
        int total=0;
        for (int i=0;i<values.length;i++)
            if (i%2==0) total+=values[i];
        System.out.print(total);
    }
}
정답·해설 보기

정답

18

해설

조건은 값의 홀짝이 아니라 인덱스의 홀짝이다. 인덱스 0과 2의 원소만 누적한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 14

프로그래밍 언어

다음 Java 코드의 실행 결과를 쓰시오. 출력에 있는 공백과 줄바꿈을 구분하시오. Java 21 기준이다.

public class Main {

    public static void main(String[] args) {
        int x=2, result=4;
        switch(x) {
            case 1: result+=2;
            case 2: result*=3; break;
            default: result=0;
        }
        System.out.print(result);
    }
}
정답·해설 보기

정답

12

해설

case 1에는 break가 없어서 case 2의 처리까지 이어진다. x가 2이면 곱셈부터 실행한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 15

소프트웨어 설계·구축

배포 문서의 헤더에 사용자가 어떤 제품의 어떤 배포본인지 알아볼 수 있도록 넣을 정보 세 가지를 쓰시오.

정답·해설 보기

정답

예: 제품명, 버전 번호, 배포일

해설

다른 적절한 예로 릴리스 제목이나 문서 작성일도 가능하다. 변경 내역과 설치 방법은 보통 본문에서 다룬다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 16

소프트웨어 설계·구축

예상 코드 규모는 36,000 LOC, 1인당 생산성은 월 600 LOC, 인원은 3명이다. 모두 같은 생산성으로 동시에 일하며 추가 비용이 없다고 가정할 때 예상 개발 기간을 개월로 구하시오.

정답·해설 보기

정답

20개월

해설

총 공수는 36,000/600=60인월이다. 이를 3명으로 나누면 예상 기간이 된다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 17

SQL·데이터베이스

조인이 잦아 응답이 느린 조회 기능에서, 정규화된 두 테이블의 일부 값을 의도적으로 중복 저장했다. 이 설계 기법과 주의점 한 가지를 쓰시오.

정답·해설 보기

정답

반정규화(비정규화). 중복 데이터의 일관성을 유지해야 한다.

해설

읽기 성능을 위해 중복·통합·분할 등을 도입할 수 있지만 갱신 비용과 불일치 위험을 함께 검토해야 한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 18

네트워크·운영체제

OSI 모델에서 케이블·전압·커넥터와 같은 특성을 정의하고 비트를 신호로 전송하는 계층의 이름을 쓰시오.

정답·해설 보기

정답

물리 계층(1계층)

해설

프레임의 오류 검출과 MAC 주소는 데이터 링크 계층의 관심사이다. 물리 계층은 비트의 실제 전송을 담당한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 19

테스트·품질관리

성능 지표 ① 단위 시간에 처리한 작업 수 ② 요청 시점부터 첫 응답까지의 시간 ③ 작업 제출부터 완료까지의 전체 시간을 차례로 쓰시오.

정답·해설 보기

정답

① 처리량 ② 응답 시간 ③ 반환 시간(턴어라운드 시간)

해설

응답 시간은 여기서 첫 응답까지로 정의한다. 전체 작업 완료 시간인 반환 시간과 구별해야 한다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

2020년 1회 주제 · 연습 20

소프트웨어 설계·구축

화살표 X→Y는 X가 Y를 호출한다는 뜻이다. A→C, F→C, C→D, C→E, D→E일 때 C 모듈의 fan-in과 fan-out을 구하시오. 서로 다른 직접 연결 모듈 수를 센다.

정답·해설 보기

정답

fan-in 2, fan-out 2

해설

C을 직접 호출하는 모듈은 A·F, C이 직접 호출하는 모듈은 D·E이다. 간접 호출은 세지 않는다.

학습용 재구성 · 주제 참고: Life-Journey · 2020년 1회 비공식 복원 (새 창)

답안과 비교한 결과

답안과 확인 상태는 현재 브라우저에만 저장됩니다. ‘맞았어요’ 표시는 본인이 확인한 학습 기록이며 실제 시험 점수가 아닙니다.

카톡에서 정보 얻기