정보처리기사 실기) 2019년 1회 정보처리기사 실기 문제 복원
본문 바로가기
정보처리기사/정보처리기사 실기 문제 복원

정보처리기사 실기) 2019년 1회 정보처리기사 실기 문제 복원

by 코딩하는 핑가 2021. 7. 27.
반응형

* 공단에서 실기 문제와 답은 공개하지 않습니다. 포스팅한 자료는 응시하신 분들의 기억으로 복원된 문제와 가답안이므로 실제 문제나 정답과 다를 수 있습니다.

* 시나공 시리즈 기출문제를 참고로 작성되었습니다.

 

* 2020년 문제가 개편됨에 따라 알고리즘 문제는 제외시켰습니다.

* 전산영어 문제는 한글로 번역시켜 출제했습니다.

* 출처를 남긴 스크랩은 허용되나, 2차 가공 및 출처를 남기지 않은 재배포와 상업적 이용은 금지합니다.

* 오탈자 및 풀이 오류 발견 시 댓글 남겨주시면 수정하도록 하겠습니다.

 

1. 다음 Java 언어로 구현한 프로그램을 분석하여 그 실행 결과를 쓰시오.

class SuperObject {
	public void print() {
    	draw();
    }
    
    public void draw() {
    	draw();
        System.out.println("Super Object");
    ]
}

class SubObject extends SuperObject {
	public void paint() {
    	super.draw();
    }
    
    public void draw() {
    	System.out.println("Sub Object");
    }
}

public class Test {
	public static void main(String[] args) {
    	SuperObject a = new SubObject();
        a.paint();
    }
}
더보기

<2020년 3회 유사문제 출제됨>

답안

Sub Object

Super Object

 

* 답안 작성 시 주의 사항

- 최근 출제되고 있는 프로그램 코드 문제는 이 문제처럼 코드에 대한 설명이 전혀 없습니다.

- 그러므로 C나 JAVA 코드 문제를 풀 때는 실행 순서대로 디버깅을 수행하면서 문제 해결의 실마리를 찾는 습관을 들여야 합니다.

 

해설

 

 

2. 다음 Java 언어로 구현한 프로그램을 분석하여 그 실행 결과를 쓰시오.

public class Test {    
    public static void main(String[] args) {
    	int i, sum = 0;
        for (i = 1; i <= 110; i++) {
        	if(i%4 == 0)
            	sum = sum + 1;
        }
        System.out.printf("%d", sum);
    }
}
더보기

답안 : 27

해설

 

 

3. 다음 C 언어로 구현한 프로그램을 분석하여 괄호 ( ① ) ~ ( ② )에 가장 적합한 답을 쓰시오.

예) 1234567을 입력받으면 결과는 1+2+3+4+5+6+7 = 28 출력

[ 코드 ]

#include <stdio.h>

main()
{
	int input, sum = 0;
    scanf("%d", &input);
    while (1) {
    	if (( ① ) == 0) // 답안 1
        	break;
        sum = sum + input % 10;
        input = input / ( ② ); // 답안 2
    }
    printf("%d\n", sum);
}

 

더보기

답안

① input

② 10

 

해설

 

 

4. SQL과 관련한 다음 설명에서 괄호 ( ① ) ~ ( ② )에 가장 적합한 답을 쓰시오.

관계형 데이터베이스에서 사용되는 SQL은 데이터베이스의 조작과 관리에 사용되는 프로그래밍 언어이다. 1974년 IBM 연구소에서 개발한 SEQUEL에서 유래한 SQL은 국제표준 데이터베이스 언어이며, 많은 회사에서 관계형 데이터베이스(RDB)를 지원하는 언어로 채택하고 있다. 관계대수와 관계해석을 기초로 한 혼합 데이터 언어이며, 데이터 구조의 정의, 데이터 조작, 데이터 제어 기능을 모두 갖추고 있다.

 

DCL은 이러한 SQL에서 데이터 관리를 목적으로 사용하는 언어이다. 주로 데이터의 보안, 무결성, 회복, 병행 수행 제어 등을 정의하는 데 사용된다. 그 중 ( ① )은(는) 데이터베이스 사용자에게 사용 권한을 부여하는데 사용하는 명령어이다.

 

( ① )은(는) ALL, SELECT, INSERT, DELETE, UPDATE, INDEX, ALTER 등의 다양한 권한을 다른 사용자에게 부여할 수 있으며, 부여받은 권한을 다른 사용자에게 다시 부여할 수 있는 권한을 부여하는 WITH GRANT OPTION 또한 존재한다.

 

예) GILDONG에게 STUDENT 테이블에 대한 모든 권한과 다른 사람에게도 권한을 부여할 수 있는 권한까지 부여한다.

( ① ) ALL ON STUDENT TO GILDONG WITH GRANT OPTION;

이와 반대로 부여된 권한을 취소하는 명령어는 ( ② )(이)라고 한다. 취소할 수 있는 권한의 종류는 ( )와(과) 동일하다. ( ② )(에)는 WITH GRANT OPTION을 취소할 수 있는 GRANT OPTION FOR가 있으며, 권한 해제 시 권한을 부여받았던 사용자가 다른 사용자에게 부여한 권한도 연쇄적으로 해제시키는 CASCADE가있다.

 

예) GILDONG에게 부여된 STUDENT 테이블에 대한 권한은 유지하고, 다른 사용자에게 권한을 부여할 수 있는 권한만 취소한다.

( ② ) GRANT OPTION FOR ALL ON STUDENT FROM GILDONG;
더보기

답안

① GRANT

② REVOKE

 

 

5. 데이터베이스와 관련된 다음 설명에서 각 지문 ① ~ ⑤에 가장 적합한 답을 쓰시오.

(  ①  )은(는) 기존의 관리 방법이나 분석 체계로는 처리하기 어려운 막대한 양의 정형 또는 비정형 데이터 집합으로, 스마트 단말의 빠른 확산, 소셜 네트워크 서비스의 활성화, 사물 네트워크의 확대로 데이터 폭발이 더욱 가속화됨에 따라 등장하였다. (  ①  )이(가) 주목받고 있는 이유는 기업이나 정보, 포털 등이 (  ①  )을(를) 효과적으로 분석하여 미래를 예측해 최적의 대응 방안을 찾고, 이를 수익으로 연결하여 새로운 가치를 창출할 수 있기 때문이다.

 

이렇게 실시간으로 발생하는 대용량의 연속적인 데이터의 흐름을 관리하는 시스템을 (  ②  )(이)라고 한다. 연속적인 데이터의 흐름을 데이터 스트림이라고 하는데, (  ②  )은(는) 이러한 데이터 스트림에 대해 등록된 질의를 연속적으로 수행할 수 있도록 대용량의 데이터 스트림 처리에 최적화되어 있다.

 

데이터를 데이터 베이스에 저장할 때 불필요하게 중복되어 릴레이션 조작 시 예기치 못한 곤란한 현상이 발생하는 것을 (  ③  )(이)라고 한다. 의도와는 상관없이 원하지 않은 값들이 삽입되거나, 삭제되거나, 갱신 시 모순이 발생하는 현상들이 모두 (  ③  )에 해당한다.

 

이러한 (  ③  )을(를) 방지하기 위해 데이터들의 중복성 및 종속성을 배제하는 정규화를 수행한다. 테이블에 속한 모든 속성의 도메인이 원자 값만으로 되어 있는 정규형을 1NF라고 한다. 아래 그림은 1NF에서 (  ④  )을(를) 제거하여 (  ⑤  )을(를) 만드는 과정이다.

<Table R> 에서 함수적 종속관계를 보았을 때, C는 key에 해당하는 A와 B중 A에만 종속되는 (  ④  )이므로 C를 테이블에서 분리하면 <Table R1>과 <Table R2>와 같이 (  ⑤  )에 해당하는 테이블이 완성된다.

더보기

답안

각 문항별로 제시된 답안 중 한 가지만 쓰면 됩니다.

① Big Data, 빅데이터

② DSMS, 데이터 스트림 관리 시스템, Data Stream Management System

③ Anomaly, 이상

④ 부분 함수 종속, 부분 함수적 종속

⑤ 제 2정규형, 2NF

⑥ A → C

 

 

6. 다음 릴레이션에 대한 ( 1 ), ( 2 )의 물음에 답하시오.

릴레이션 <사원>

고객번호 이름 성별 주소
001 이동규 서울시
002 방지혜 춘천시
003 한동욱 안산시

(  1  ) <사원> 릴레이션의 차수는 얼마인가?

(  2  ) <사원> 릴레이션의 카디널리티는 얼마인가?

더보기

답안

( 1 ) 4

( 2 ) 3

 

 

7. 다음 트랜잭션과 관련된 다음 설명에서 괄호 ( )에 공통으로 들어갈 가장 적합한 답을 쓰시오.

트랜잭션은 데이터베이스에서 하나의 논리적 기능을 수행하기 위한 일련의 연산 집합으로서 작업의 단위이며, 데이터베이스 관리 시스템에서 회복 및 병행 수행 시 처리되는 작업의 논리적 단위이다. 하나의 트랜잭션은 정상적으로 종료될 경우 COMMIT 연산이 수행되어 변경 내용을 데이터베이스에 반영하며, 비정상적으로 종료될 경우 ROLLBACK 연산이 수행되어 모든 변경 작업을 취소하고 이전상태로 되돌린다.

 

이러한 트랜잭션이 갖추어야 할 특성으로는 (         ), 원자성(Atomicity), 일관성(Consistency), 영속성(Durability)이 있다.

 

(       )은(는) 한 트랜잭션이 데이터를 갱신하는 동안 이 트랜잭션이 완료되기 전에는 갱신중인 데이터를 다른 트랜잭션들이 접근하지 못하도록 성질이다. 여러 트랜잭션들이 동시에 수행되어도 그 결과는 순차적으로 실행된 결과와 같아야함을 의미한다. 예를 들어 A계좌와 B계좌가 존재하여 A계좌에서 B계좌로 일정 금액을 이체하는 트랜잭션을 수행할 때 다른 트랜잭션이 A계좌와 B계좌에 접근할 수 없어야 한다.

더보기

<2020년 1회 유사문제 출제됨>

답안 : 독립성, 격리성, Isolation

제시된 답안 중 한 가지만 쓰면 됩니다.

 

 

8. 다음 정보 보호 및 보안과 관련한 다음 설명에서 각 지문 ① ~ ⑤에 가장 적합한 답을 쓰시오.

① 온라인상에서 범죄와 같은 불법적인 행위를 수행하기 위해 제작된 컴퓨터 프로그램으로, 공격용 툴킷이라고도 불린다. 악성 코드로 구성된 프로그램이 사용자를 속여 PC에 설치되면 불법적으로 정보를 수집하거나 PC의 자원을 사용하여 원하는 대상을 공격하는 용도로 사용된다. 키로거, 스파이웨어, 브라우저 하이잭커 등이 여기에 해당한다.

 

② 임의의 길이를 갖는 값을 입력받으면 고정된 길이의 값을 출력하는 함수다. 직접 접근할 수 있는 짧은 길이의 값이나 키가 존재하여 해당 주소에 빠른 접근이 가능하다. 이 때문에 매우 빠른 데이터 검색을 필요로 하는 컴퓨터 프로그램에서 주로 사용되며, 키에 따라 항상 일정한 값이 출력되기 떄문에 메시지의 오류나 변조를 탐지하는데 사용되기도 한다. 사용되는 주요 알고리즘으로는 미국 표준 기술 연구소(NIST, National Institute of Standards and Technology)에서 공표한 SHA가 있다. 그중 SHA-256은 2009년 출현된 비트코인(Bitcoin)의 암호화 기술로 채택된 바 있다.

 

③ 데이터를 송수신하는 두 컴퓨터 사이, 종단 간 즉 TCP/IP 계층과 애플리케이션 계층(HTTP, TELNET, FTP 등) 사이에 위치하여 인증, 암호화, 무결성을 보장하는 업계 표준 프로토콜이다. 미국 넷스케이프 커뮤티케이션스사가 개발하였고, 마이크로소프트사 등 주요 웹 제품 업체가 채택하고 있다. 기본적으로 사용하기 위해서는 전용 인증서가 필요하며, 전송되는 데이터는 모두 암호화되어 전송하기 때문에 전송 도중 유출되어도 안전하다.

 

④ 온라인상의 안전한 거래를 위해 Visa와 Master Card에서 개발한 프로토콜로, Microsoft, IBM, Netscape, VeriSign 등의 다양한 IT기술 전문 업체들의 지원을 받아 만들어졌다. 개인 계좌 정보나 신용 정보 등이 네트워크를 통해 노출되거나 위변조되는 것을 막으며, 메시지 암호화 방법과 2중 전자서명을 통해 기밀성과 무결성을 보장한다.

 

⑤ 불법적인 해킹에 사용되는 악의적인 기능들을 제공하는 도구를 말한다. 해당 기능에는 백도어, 트로이 목마, 원격접근 등이 있다. 시스템의 취약점을 통해 설치되며, 설치와 동시에 자신이 들어온 경로와 관련 명령어들을 변조 및 은폐하고 관리자 권한을 탈취한다. 해커가 시스템의 민감한 정보를 수집하거나 네트워크상의 다른 시스템을 공격, 또는 추적 회피를 위한 중간 지점으로 이용하더라도 로그를 지워버릴 수 있어 탐지가 어렵다.

더보기

답안

각 문항별로 제시된 답안 중 한 가지만 쓰면 됩니다.

① 크라임웨어, Crimeware

② 해시 함수, Hash function

③ SSL, 보안 소켓 계층, Secure Sockets Layer

④ SET, 안전한 전자 거래, Secure Electronic Transaction

⑤ 루트킷, Rootkit

 

 

10. 신기술 동향과 관련된 다음 설명에서 각 지문 ① ~ ⑤에 가장 적합한 답을 쓰시오.

① 소프트웨어 유통방식의 근본적인 변화를 설명하는 개념으로, 소프트웨어의 여러 기능 중에서 사용자가 필요로 하는 서비스만 이용 가능하도록 한 소프트웨어이다. 공급업체가 하나의 플랫폼을 이용해 다수의 고객에게 소프트웨어 서비스를 제공하고, 사용자는 이용한 만큼 돈을 지급한다. 전통적 소프트웨어 비즈니스 모델과 비교할 대 가장 큰 차이점은 제품 소유의 여부다. 기존 기업용 소프트웨어는 기업 내부의 서버 등 장비에 저장해 이용한다는 점에서 고객이 소유권을 갖고 있었지만, 이것은 소프트웨어가 제품이 아닌 서비스, 즉 빌려 쓰는 모델이라는 점에서 기존 라이선스 모델과는 확연히 구분된다.

 

② IT 서비스의 운영 및 관리를 돕기 위한 문서들의 집합으로, IT 조직이 기존의 기술 중심적인 운영에서 사용자들의 요구에 초점을 맞춘 고객 지향적인 운영방식을 채택함에 따라 각자 개별적인 IT 관리 관행을 만드는 것을 방지하기 위해 영국 정부가 다양한 IT 서비스들의 관리 방법들(Best Practice)을 모아 만든 표준적인 참조문헌이다.

 

③ 여러 개의 하드디스크로 디스크 배열을 구성하여 파일을 구성하고 있는 데이터 블록들을 서로 다른 디스크들에 분산 저장하는 기술이다. 이 경우 블록들을 여러 디스크에서 동시에 읽거나 쓸 수 있으므로 다스크의 속도가 매우 향상된다. 하지만 한 디스크에만 결함이 발생해도 전체 데이터에 파일이 손상되는 문제가 발생한다. 이러한 문제점을 해결하기 위해 디스크 배열에 오류 검출 및 복구를 위한 여분의 디스크들을 추가함으로써, 오류가 발생한느 경우레도 원래의 데이터를 복구할 수 있다.

 

④ 인텔과 마이크론이 합작하여 개발한 RAM과 플레시 메모리의 중간형태에 해당하는 비휘발성 메모리이다. 3D XPoint 기술을 활용하여 기존의 NAND 형태의 SSD보다 반응 속도(Iatency)와 내구성이 1,000배 뛰어나고, 집적도에 대해서는 DRAM보다 10배 더 높다고 알려져 있다. DRAM과 NAND 플래시 사이에 위치하여 초고속 캐쉬 메모리의 역할로 사용되어지고 있다.

 

⑤ 인간뿐만 아니라 컴퓨터도 정보를 이해할 수 있도록 해주는 개념화 명세서로, 단어와 관계들로 구성된 일종의 사전이다. 특정 도메인에 관련된 단어들을 계층적 구조로 표현하고 이를 확장할 수 있는 추론 규칙을 포함한다. 시멘틱 웹을 구현할 수 있는 도구로서 활용되며, RDF, OWL, SWRL 등의 언어를 이용해 표현한다.

더보기

답안

각 문항별로 제시된 답안 중 한 가지만 쓰면 됩니다.

① SaaS, 서비스형 소프트웨어, Software as a Service

② ITIL, 정보기술 인프라 라이브러리, Information Technology Infrastructure Library

③ RAID, 복수 배열 독립 디스크, Redundant Array of Independent Disks

④ 옵테인 메모리, Optane Memory

⑤ 온톨로지, Ontology

 

 

11. 다음과 관련된 설명에서 각 지문 ① ~ ⑤에 가장 적합한 답을 쓰시오.

① 이 용어는 예상치 못한 이벤트가 발생했다는 것을 프로그램에 알리는 신호를 의미하며, 예외라고도 불리다. 이 신호는 프로그램이 이벤트를 처리하기 위해 일시적으로 멈추거나, 하고 있었던 작업으로 돌아갈 수 있도록 한다. 이 신호를 받으면 프로세서는 현재 수행중인 작업을 멈추고, 그 상태를 저장한 다음, 핸들러 또는 ISR이라고 불리는 이벤트 처리 기능을 실행하여 응답한다.

 

② 운영체제에서 새로 설치된 하드웨어를 자동으로 구성하는 능력이다. 운영체제가 연결되는 장치를 자동으로 인식해 적절한 구동 장치르 설치하므로 사용자는 구동 장치의 설정은 신경쓰지 않고 장치를 연결하여 사용할 수 있다.

 

③ 처리될 데이터나 연산의 중간 결과를 저장하는 CPU 내부에 위치한 특별한 고속 저장 공간이다. 플립플롭(Flip-Flop)과 래치(Latch)들을 병렬로 결합한 것으로 가장 빠른 메모리이다.

 

④ 운영체제에서 가장 핵심적인 역할을 한다. 메모리나 프로세서와 같은 자원을 관리하거나, 시스템이 원활히 운영되도록 제어하는 역할을 수행한다. 일반적으로 종료된 입출력 연산과 같이 서비스에 대한 경쟁적인 모든 요청들을 처리하는 인터럽트 처리기, 프로그램들의 처리 시간을 어떤 순서대로 나눌지 결정하는 스케쥴러, 그리고 각각의 프로세스에게 권한을 부여하는 관리자를 포함한다.

 

⑤ 이 장치는 메모리 내부 데이터의 물리적 위치와는 관계없이 거의 동일한 시간 내에 데이터 항목들을 읽거나 쓸 수 있다. 데이터를 읽는 것만 가능한 ROM과 달리, 데이터를 읽고 쓰는 것이 가능하다. 또한 이것은 휘발성이라 이것에 저장된 데이터든 전원이 내려가면 곧바로 손실된다.

더보기

답안

각 문항별로 제시된 답안 중 한 가지만 쓰면 됩니다.

① Interrupt

② PnP, Plug and Play

③ Register

④ Kernel

⑤ RAM, Random Access Memory

 

 

반응형

댓글