목차
2022년 2회 정보처리기사 실기
가독성을 위해서 정답은 청록색으로 표기하겠습니다.
■ 문제 1
다음은 관계 데이터 모델에 대한 설명이다. 괄호 ( ) 안에 들어가는 용어를 작성하시오
( )은/는 관계 데이터의 연산을 표현하는 방법으로, 관계 데이터 모델의 제안자인 코드(E. F. Codd)가 수학의 술어 해석(Predicate Calculus)에 기반을 두고 관계 데이터 베이스를 위해 제안했다.
( )은/는 원하는 정보가 무엇이라는 것만 정의하는 비절차적 특성을 지니며, 원하는 정보를 정의할 때 계산 수식을 사용한다.
튜플 해석식을 사용하는 튜플 ( )과 도메인 해석식을 사요하는 도메인 ( )으로 구분된다.
관계 해석(Relational Calculus)
■ 문제 2
암호화 알고리즘에 대한 다음 설명에서 괄호 ( ) 안에 들어갈 알맞은 용어를 쓰시오.
암호화 알고리즘은 패스워드, 주민번호, 은행계좌와 같은 중요 정보를 보호하기 위해 평문을 암호화 된 문장으로 만드는 절차 또는 방법을 의미한다.
스위스의 라이(Lai)와 메시(Messy)는 1990년 PES를 발표하고, 이후 이를 개선한 IPES를 발표하였다. IPES는 128비트의 Key를 사용하여 64비트 블록을 암호화하는 알고리즘이며 현재는 ( 1 )라고 불린다.
( 2 )은/는 국가 안전 보장국(NSA)에서 개발한 암호화 알고리즘으로, 클리퍼 칩(Clipper Chip)이라는 IC 칩에 내장되어있다. 80비트의 Key를 사용하여 64비트 블록을 암호화하며, 주로 전화기와 같은 음성 통신 장비에 삽입되어 음성 데이터를 암호화한다.
1. IDEA(International Data Encryption Algorithm)
2. SKIPJACK
■ 문제 3
다음은 제품 테이블을 대상으로 "H" 제조사에서 생산한 제품들의 단가 보다 높은 단가를 가진 제품의 정보를 조회하는 SQL문이다. 괄호 ( ) 안에 알맞은 답을 작성하시오.
제조사 | 제품명 | 단가 |
---|---|---|
A | 과자 | 1,000 |
B | 초콜릿 | 6,000 |
H | 사탕 | 2,000 |
C | 아이스크림 | 5,000 |
H | 사탕 | 3,000 |
SELECT 제소사, 제품명, 단가
FROM 제품
WHERE 단가 > ( ) (SELECT 단가 FROM 제품 WHERE 제조사='H')
ALL
■ 문제 4
다음 테이블을 참조하여 SQL문을 실행했을 때 출력되는 결과를 쓰시오.
INDEX | COL1 | COL2 |
---|---|---|
1 | 2 | Null |
2 | 3 | 6 |
3 | 5 | 5 |
4 | 6 | 3 |
5 | Null | 3 |
SELECT COUNT(COL2) FROM TABLE WHERE COL1 IN(2, 3) OR COL2 IN(3, 5);
3
■ 문제 5
네트워크 보안에 대한 다음 설명에서 괄호에 공통으로 들어갈 알맞은 용어를 영문 약어로 쓰시오.
( )은/는 인터넷 등 통신 사업자의 공중 네트워크와 암호화 기술을 이용하여 사용자가 마치 자신의 전용 회선을 사용하는 것처럼 해주는 보안 솔루션이다.
암호화 된 규격을 통해 인터넷망을 전용선의 사설망을 구축한 것처럼 이용하므로, 비용 부담을 줄일 수 있다.
( )을 사용하면 두 장치 및 네트워크 사이에 암호화된 보안 터널이 생성되며, 터널에 사용되는 프로토콜에 따라 SSL ( )과 IPSec ( )으로 불린다.
VPN(Virtual Private Network)
■ 문제 6
객체 지향에 대한 다음 설명에 해당하는 용어를 보기에서 찾아 쓰시오.
SRP SOLID OCP LSP ISP DIP OTP PNP |
자신이 사용하지 않는 인터페이스와 의존 관계를 맺거나 영향을 받지 않아야 한다는 객체 지향 설계 원칙 중의 하나이다.
예를 들어 프린터, 팩스, 복사 기능을 가진 복합기의 경우 3가지 기능을 모두 가진 범용 인터페이스보다는 프린터 인터페이스, 팩스 인터페이스, 복사 인터페이스로 분리함으로써 하나의 기능 변경으로 인해 다른 기능이 영향을 받지 않도록 해야 한다.
ISP(Interface Segregation Principle)
■ 문제 7
다음 자바로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public static void main(String args[]){
int i = 3;
int k = 1;
switch(i) {
case 1: k += 1;
case 2: k++;
case 3: k = 0;
case 4: k += 3;
case 5: k -= 10;
default: k--;
}
System.out.print(k);
}
-8
■ 문제 8
다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
struct A{
int n,
int g
}
int main(){
A a = new A[2]
for(i=0; i <2; i++) {
a[i].n = i;
a[i].g = i + 1;
}
System.out.printf(a[0].n + a[1].g);
}
2
■ 문제 9
서브네팅(Subnetting)에 대한 다음 설명에서 괄호 ( ) 안에 들어갈 알맞은 답을 쓰시오.
현재 IP주소가 192.168.1.132이고, 서브넷 마스크가 255.255.255.192일 때, 네트워크 주소는 192.168.1.( 1 )이고, 해당 네트워크에서 네트워크 주소와 브로드캐스트 주소를 제외한 사용 가능 호스트의 수는 ( 2 )개 이다.
1. 128
2. 62
■ 문제 10
애플리케이션 테스트에 대한 다음 설명에서 괄호 ( )에 들어갈 알맞은 테스트를 쓰시오.
인수 테스트는 개발한 소프트웨어가 사용자의 요구사항을 충족하는지에 중점을 두고 테스트하는 방법이다.
( 1 )은/는 선정된 최종 사용자가 여러 명의 사용자 앞에서 행하는 테스트 기법으로, 실제 업무를 가지고 사용자가 직접 테스트한다.
( 2 )은/는 개발자의 장소에서 사용자가 개발자 앞에서 행하는 테스트 기법으로, 테스트는 통제된 환경에서 행해지며, 오류와 사용상의 문제점을 사용자와 개발자가 함께 확인하면서 기록한다.
1. 베타 테스트
2. 알파 테스트
■ 문제 11
다음 설명에 해당하는 테스트를 보기에서 찾아 쓰시오.
Integration Big Bang System Acceptance Unit Regression White Box Black Box |
통합 테스트로 인해 변경된 모듈이나 컴포넌트에 새로운 오류가 있는지 확인하는 테스트이다.
이미 테스트된 프로그램의 테스팅을 반복하는 것이다.
수정한 모듈이나 컴포넌트가 다른 부분에 영향을 미치는지, 오류가 생기지 않았는지 테스트하여 새로운 오류가 발생하지 않음을 보증하기 위해 반복 테스트한다.
Regression
■ 문제 12
다음은 EMPLOYEE 테이블에 대해 관계 대수식을 수행했을 때 출력되는 결과이다. 결과의 각 괄호 ( ) 안에 들어갈 알맞은 답을 쓰시오.
𝛑TTL (EMPLOYEE) |
INDEX | AGE | TTL |
---|---|---|
1 | 48 | 부장 |
2 | 25 | 대리 |
3 | 41 | 과장 |
4 | 36 | 차장 |
( 1 ) |
---|
( 2 ) |
( 3 ) |
( 4 ) |
( 5 ) |
1. TTL
2. 부장
3. 대리
4. 과장
5. 차장
■ 문제 13
다음 파이썬으로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
a = "REMEMBER NOVEMBER"
b = a[:3] + a[12:16];
c = "R AND %s" % "STR";
print(b+c);
REMEMBER AND STR
■ 문제 14
경로 제어 프로토콜에 대한 다음 설명에서 괄호 ( ) 안에 들어갈 알맞은 용어를 보기에서 찾아 쓰시오.
BGP AS HOP OSPF NAT ISP EGP IGP |
경로 제어 프로토콜은 크게 자율시스템 내부의 라우팅에 사용되는 ( 1 )와 자율 시스템간의 라우팅에 사용되는 ( 2 )로 구분할 수 있다.
( 1 )은/는 소규모 동종 자율 시스템에서 효율적인 RIP와 대규모 자유 시스템에서 많이 사용되는 ( 3 )로 나누어진다.
( 3 )은/는 링크 상태를 실시간으로 반영하여 최단 경로로 라우팅을 지원하는 특징이 있다.
( 4 )은/는 ( 2 )의 단점을 보완하여 만들어진 라우팅 프로토콜로, 처음 연결될 때는 전체 라우팅 테이블을 교환하고, 이후에는 변화된 정보만을 교환한다.
1. IGP
2. EGP
3. OSPF
4. BGP
■ 문제 15
다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h>
int len(char*p);
int main(){
char*p1 = "2022";
char*p2 = "202207";
int a = p1;
int b = p2;
printf("%d", len(a) + len(b));
}
int len(char*p){
int r = 0;
while(*p != '\0'){
p++;
r++;
}
return r;
}
10
■ 문제 16
다음 C언어로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
#include <stdio.h>
int main(int argc, char *argv[]) {
int a[4] = {0, 2, 4, 8};
int b[3] = {};
int i = 1;
int sum = 0;
int *p1;
for (i; i < 4; i++) {
p1 = a + i;
b[i-1] = *p1 - a[i-1];
sum = sum + b[i-1] + a[i];
}
printf("%d", sum);
return 0;
}
22
■ 문제 17
다음 자바로 구현된 프로그램을 분석하여 그 실행 결과를 쓰시오.
public class Conv {
int a;
public Conv(int a) {
this.a = a;
}
public int func() {
int b = 1;
for (int i = 1; i < a; i++){
b += a * i;
}
return a + b;
}
public static void main(String[] args){
Conv obj = new Conv(3);
obj.a = 5;
int b = obj.func();
System.out.print(obj.a + b);
}
}
61
■ 문제 18
함수적 종속에 대한 다음 설명에서 괄호 ( ) 안에 들어갈 알맞은 용어를 보기에서 찾아 기호로 쓰시오.
Hybrid Multi Valued Transitive Full Defined Natural Relational Partial |
테이블 R에서 '성적'은 기본키인 {학생, 학과}에 대해 ( 1 ) Functional Dependency이다.
테이블 R에서 '학년'은 기본키인 {학생, 학과} 중 '학생'만으로 식별이 가능하므로 기본키에 대해 ( 2 ) Functional Dependency이다.
임의의 테이블에 속성 A, B, C가 있을 때, A➡B이고 B➡C일 때, A➡C인 관계는 ( 3 ) Functional Dependency이다.
1. Full
2. Partial
3. Transitive
■ 문제 19
인터넷에 대한 다음 설명에서 괄호 ( ) 안에 들어갈 알맞은 용어를 보기에서 찾아 쓰시오.
UDDI XML WSDL Hypertext DHTML HTML SOAP HTTP |
인터넷이란 TCP/IP 프로토콜을 기반으로 하여 전 세계 수많은 컴퓨터와 네트워크들이 연결된 광범위한 컴퓨터 통신망이다.
( 1 )은/는 월드 와이드 웹(WWW)에서 HTML 문서를 송수신하기 위한 표준 프로토콜로, GET과 POST 메소드를 통해 메시지를 주고 받는다.
( 2 )은/는 다른 문서나 그림으로 이동할 수 있는 연결을 가지고 있는 텍스트를 의미한다.
( 3 )은/는 인터넷의 표준 문서인 하이퍼텍스트 문서를 만들기 위해 사용하는 언어이다.
1. HTTP
2. Hypertext
3. HTML
■ 문제 20
다음의 모듈 관계를 표현한 시스템 구조도를 참고하여 모듈 F의 팬인(Fan-In)과 팬아웃(Fan-Out)을 구하시오.
Fan-In : 3
Fan_Out : 2