본문 바로가기
시험해설/정보처리기사

정보처리기사 2023년 2회 기출문제 무료 해설 4

by 지적인 햄찌 2024. 10. 19.
반응형

41번 문제: 하나의 애트리뷰트가 가질 수 있는 원자값들의 집합을 의미하는 것은?

  1. 도메인
  2. 튜플
  3. 엔티티
  4. 다형성
  • 정답: 1번 (도메인)
  • 해설: 도메인은 하나의 애트리뷰트가 가질 수 있는 모든 원자값들의 집합을 의미합니다.

42번 문제: 데이터베이스에서 릴레이션에 대한 설명으로 틀린 것은?

  1. 모든 튜플은 서로 다른 값을 가지고 있다.
  2. 하나의 릴레이션에서 튜플은 특정한 순서를 가진다.
  3. 각 속성은 릴레이션 내에서 유일한 이름을 가진다.
  4. 모든 속성 값은 원자값을 가진다(Atomic Value).
  • 정답: 2번
  • 해설: 릴레이션의 튜플은 순서를 가지지 않습니다. 이는 릴레이션의 특성 중 하나로, 튜플 간 순서는 무의미합니다.

43번 문제: 다음 중 DML에 해당하는 것으로만 나열된 것은?

  1. SELECT, UPDATE, INSERT
  2. SELECT, UPDATE, GRANT
  3. SELECT, INSERT, GRANT
  4. SELECT, UPDATE, INSERT, GRANT
  • 정답: 1번
  • 해설: DML(Data Manipulation Language)은 데이터베이스에서 데이터를 조회하고 조작하기 위한 언어로, SELECT, UPDATE, INSERT가 해당됩니다. GRANT는 DCL(Data Control Language)입니다.

44번 문제: 다음은 관계 대수의 수학적 표현식이다. 해당되는 연산은?

  • R x S = { r·s | r ∈ R ∧ s ∈ S }
  1. 합집합
  2. 교집합
  3. 차집합
  4. 카티션 프로덕트
  • 정답: 4번 (카티션 프로덕트)
  • 해설: 카티션 프로덕트는 두 릴레이션 R과 S의 모든 튜플을 조합하여 새로운 튜플을 생성하는 연산입니다.

45번 문제: 병렬 데이터베이스 환경 중 수평 분할에서 활용되는 분할 기법이 아닌 것은?

  1. 라운드 로빈
  2. 범위 분할
  3. 예측 분할
  4. 해시 분할
  • 정답: 3번 (예측 분할)
  • 해설: 수평 분할에서는 주로 라운드 로빈, 범위 분할, 해시 분할과 같은 기법이 사용되며, 예측 분할은 사용되지 않습니다.

46번 문제: 분산 데이터베이스 시스템과 관련한 설명으로 틀린 것은?

  1. 물리적으로 분산된 데이터베이스 시스템을 논리적으로 하나의 데이터베이스 시스템처럼 사용할 수 있도록 한 것이다.
  2. 물리적으로 분산되어 지역별로 필요한 데이터를 처리할 수 있는 지역 컴퓨터를 분산 처리기라고 한다.
  3. 분산 데이터베이스 시스템을 위한 통신 네트워크 구조가 데이터 통신에 영향을 주므로 효율적으로 설계해야 한다.
  4. 데이터베이스가 분산되어 있음을 사용자가 인식할 수 있도록 분산 투명성을 배제해야 한다.
  • 정답: 4번
  • 해설: 분산 투명성은 사용자가 데이터베이스가 분산되어 있음을 인식하지 않도록 보장하는 특성입니다. 이를 배제하면 사용자는 시스템의 복잡성을 직접 다뤄야 하므로 불편합니다.

47번 문제: 스키마의 종류 중 조직이나 기관의 총괄적 입장에서 본 데이터베이스의 전체적인 논리적 구조로서 모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 데이터베이스 구조를 의미하는 것은?

  1. 관계 스키마
  2. 외부 스키마
  3. 내부 스키마
  4. 개념 스키마
  • 정답: 4번 (개념 스키마)
  • 해설: 개념 스키마는 조직 전체의 데이터베이스 구조를 표현하며, 데이터베이스의 논리적인 전체 구조를 제공합니다.

48번 문제: 학적 테이블에서 전화번호가 Null 값이 아닌 학생명을 모두 검색할 때 SQL 구문으로 옳은 것은?

  1. SELECT 학생명 FROM 학적 WHERE 전화번호 DON'T NULL;
  2. SELECT 학생명 FROM 학적 WHERE 전화번호 != NOT NULL;
  3. SELECT 학생명 FROM 학적 WHERE 전화번호 IS NOT NULL;
  4. SELECT 학생명 FROM 학적 WHERE 전화번호 IS NULL;
  • 정답: 3번
  • 해설: IS NOT NULL은 특정 컬럼 값이 Null이 아닌 경우를 조건으로 검색할 때 사용됩니다.

49번 문제: 다음 중 SQL에서 DDL이 아닌 것은?

  1. CREATE
  2. DELETE
  3. ALTER
  4. DROP
  • 정답: 2번 (DELETE)
  • 해설: DDL(Data Definition Language)은 데이터베이스의 구조를 정의하는 언어로, CREATE, ALTER, DROP 등이 해당됩니다. DELETE는 DML입니다.

50번 문제: 다음 SQL 문장이 뜻하는 것은 무엇인가?

  • INSERT INTO (학번, 이름, 학년) 컴퓨터과테이블 SELECT 학번, 이름, 학년 FROM 학생테이블 WHERE 학과 = '컴퓨터';
  1. 학생테이블에서 학과가 컴퓨터인 사람의 학번, 이름, 학년을 검색하라.
  2. 학생테이블에 학과가 컴퓨터인 사람의 학번, 이름, 학년을 삽입하라.
  3. 학생테이블에서 학과가 컴퓨터인 사람의 학번, 이름, 학년을 검색하여 컴퓨터과테이블에 삽입하라.
  4. 컴퓨터과테이블에서 학과가 컴퓨터인 사람의 학번, 이름, 학년을 검색하여 학생테이블에 삽입하라.
  • 정답: 3번
  • 해설: 이 SQL 문장은 학생테이블에서 학과가 '컴퓨터'인 사람들의 학번, 이름, 학년을 검색하여 컴퓨터과테이블에 삽입하는 역할을 합니다.

51번 문제: 릴레이션 R의 차수가 3, 카디널리티가 3이고, 릴레이션 S의 차수가 4, 카디널리티가 4일 때 두 릴레이션을 카티션 프로덕트한 결과 릴레이션의 차수와 카디널리티는?

  1. 4, 4
  2. 7, 7
  3. 7, 12
  4. 12, 12
  • 정답: 4번 (12, 12)
  • 해설: 카티션 프로덕트는 두 릴레이션의 모든 튜플을 조합하여 새로운 튜플을 생성하므로, 차수는 각 릴레이션의 차수를 합한 값이고, 카디널리티는 각 릴레이션의 카디널리티를 곱한 값입니다.

52번 문제: 다음 표와 같은 판매실적 테이블에서 서울지역에 한하여 판매액 내림차순으로 지점명과 판매액을 출력하고자 한다. 가장 적절한 SQL 구문은?

  • 테이블명: 판매실적

도시지점명판매액

서울 강남 지점 330
서울 강북 지점 168
광주 광주 지점 197
서울 강서 지점 158
서울 강동 지점 197
대전 대전 지점 165
  1. SELECT 지점명, 판매액 FROM 판매실적 WHERE 도시 = '서울' ORDER BY 판매액 DESC;
  2. SELECT 지점명, 판매액 FROM 판매실적 ORDER BY 판매액 DESC;
  3. SELECT 지점명, 판매액 FROM 판매실적 WHERE 도시 = '서울' ORDER BY 판매액 ASC;
  4. SELECT * FROM 판매실적 WHERE 도시 = '서울' ORDER BY 판매액 DESC;
  • 정답: 1번
  • 해설: 도시가 '서울'인 데이터를 조건으로 걸고, 판매액을 내림차순으로 정렬하기 위해 ORDER BY 절을 사용합니다.

53번 문제: 트랜잭션들을 수행하는 도중 장애로 인해 손상된 데이터베이스를 손상되기 이전의 정상적인 상태로 복구시키는 작업은?

  1. Recovery
  2. Restart
  3. Commit
  4. Abort
  • 정답: 1번 (Recovery)
  • 해설: Recovery는 트랜잭션 도중 장애가 발생했을 때 데이터베이스를 정상적인 상태로 복구시키는 작업을 의미합니다.

54번 문제: 다음 조건을 모두 만족하는 정규형은?

  • 테이블 R에 속한 모든 도메인이 원자값만으로 구성되어 있다.
  • 테이블 R에서 키가 아닌 모든 필드가 키에 대해 함수적으로 종속되며, 키의 부분집합이 결정자가 되는 부분 종속이 존재하지 않는다.
  • 테이블 R에 존재하는 모든 함수적 종속에서 결정자가 후보키이다.
  1. BCNF
  2. 제1정규형
  3. 제2정규형
  4. 제3정규형
  • 정답: 1번 (BCNF)
  • 해설: BCNF는 테이블 내 모든 함수적 종속에서 결정자가 반드시 후보키가 되어야 하는 정규형입니다.

55번 문제: 관계 데이터베이스의 정규화에 대한 설명으로 옳지 않은 것은?

  1. 정규화를 거치지 않으면 여러 가지 상이한 종류의 정보를 하나의 릴레이션으로 표현하여 그 릴레이션을 조작할 때 이상 현상이 발생할 수 있다.
  2. 정규화의 목적은 각 릴레이션에 분산된 종속성을 하나의 릴레이션에 통합하는 것이다.
  3. 이상 현상은 데이터들 간에 존재하는 함수 종속이 하나의 원인이 될 수 있다.
  4. 정규화가 잘못되면 데이터의 불필요한 중복이 야기되어 릴레이션을 조작할 때 문제가 발생할 수 있다.
  • 정답: 2번
  • 해설: 정규화의 목적은 종속성을 최소화하고 데이터의 중복을 줄이는 것입니다. 종속성을 통합하는 것이 아니라 분리하여 독립적인 형태로 만드는 것이 목적입니다.

56번 문제: 분산 데이터베이스의 투명성(Transparency)에 해당하지 않는 것은?

  1. Location Transparency
  2. Replication Transparency
  3. Failure Transparency
  4. Media Access Transparency
  • 정답: 4번
  • 해설: Media Access Transparency는 분산 데이터베이스의 투명성에 해당하지 않습니다. 분산 데이터베이스의 투명성에는 위치, 복제, 장애 투명성이 포함됩니다.

57번 문제: 다음 SQL 문은 무엇을 의미하는가?

  • 프로젝트번호에서 일하는 사원의 주민등록번 (PNO) 1, 2, 3 호를 검색하라. 단, 사원 테이블은 프로 (JUNO). (WORKS) 프로젝트번호 주민등록번호 필드로 구성된다 (PNO), (JUNO).

① SELECT WORKS FROM JUNO WHERE PNO IN 1, 2, 3;

② SELECT WORKS FROM JUNO WHERE PNO ON 1, 2, 3;

③ SELECT JUNO FROM WORKS WHERE PNO IN (1, 2, 3);

④ SELECT JUNO FROM WORKS WHERE PNO ON (1, 2, 3);

  • 정답: 3번
  • 해설: 이 SQL 문은 WORKS 테이블에서 PNO가 1, 2, 3인 레코드들의 JUNO 값을 검색하는 것입니다.

58번 문제: 다음 두 릴레이션에서 외래키로 사용된 것은?

  • 과목(과목번호, 과목명)
  • 수강(수강번호, 학번, 과목번호, 학기)
  1. 수강번호
  2. 과목번호
  3. 학번
  4. 학기
  • 정답: 2번 (과목번호)
  • 해설: 수강 테이블에서 과목번호는 과목 테이블과의 관계를 나타내는 외래키입니다.

59번 문제: 데이터베이스에서 병행제어의 목적으로 틀린 것은?

  1. 시스템 활용도 최대화
  2. 사용자에 대한 응답시간 최소화
  3. 데이터베이스 공유 최소화
  4. 데이터베이스 일관성 유지
  • 정답: 3번
  • 해설: 병행제어의 목적은 데이터베이스의 일관성 유지와 시스템의 효율적 사용, 응답 시간의 최소화 등을 포함하며, 데이터베이스의 공유를 최소화하는 것은 목적에 해당하지 않습니다.

60번 문제: 객체 지향 기법에서 하나 이상의 유사한 객체들을 묶어서 하나의 공통된 특성을 표현한 것은?

  1. 메시지
  2. 클래스
  3. 추상화
  4. 메소드
  • 정답: 2번 (클래스)
  • 해설: 클래스는 객체 지향 프로그래밍에서 유사한 속성과 동작을 가지는 객체들을 묶어서 공통적인 특성을 표현한 것입니다.

61번 문제: 운영체제에서 교착 상태(Deadlock)의 발생 조건이 아닌 것은?

  1. 상호 배제
  2. 점유와 대기
  3. 선점 가능
  4. 환형 대기
  • 정답: 3번 (선점 가능)
  • 해설: 교착 상태의 발생 조건은 상호 배제, 점유와 대기, 비선점, 환형 대기입니다. 선점 가능은 교착 상태를 방지하는 방법 중 하나입니다.

62번 문제: 트랜잭션의 특성 중 "원자성(Atomicity)"에 대한 설명으로 옳은 것은?

  1. 모든 작업이 완료되거나 전혀 수행되지 않음을 보장한다.
  2. 트랜잭션이 성공하면 그 결과는 영구적으로 반영된다.
  3. 여러 트랜잭션이 동시에 수행될 때, 서로 간섭하지 않도록 보장한다.
  4. 시스템이 일관된 상태에서 시작해 일관된 상태로 끝나야 한다.
  • 정답: 1번
  • 해설: 원자성은 트랜잭션 내의 모든 작업이 모두 수행되거나, 전혀 수행되지 않도록 보장하는 특성입니다.

63번 문제: 다음 중 객체 지향의 3대 특성이 아닌 것은?

  1. 캡슐화
  2. 상속
  3. 다형성
  4. 상호 배제
  • 정답: 4번 (상호 배제)
  • 해설: 객체 지향 프로그래밍의 3대 특성은 캡슐화, 상속, 다형성입니다. 상호 배제는 동기화 문제와 관련된 개념입니다.

64번 문제: 소프트웨어 개발 생명주기(SDLC) 중 "유지보수(Maintenance)" 단계에서 수행하는 활동으로 옳지 않은 것은?

  1. 소프트웨어의 기능 추가
  2. 소프트웨어의 성능 개선
  3. 사용자의 요구사항 변경 반영
  4. 소프트웨어 설계 작성
  • 정답: 4번
  • 해설: 유지보수 단계에서는 소프트웨어의 기능 추가, 성능 개선, 요구사항 변경 반영 등의 작업을 수행하지만, 설계 작성은 초기 개발 단계에서 수행하는 작업입니다.

65번 문제: 관계 데이터 모델에서 사용하는 제약조건이 아닌 것은?

  1. 개체 무결성 제약조건
  2. 참조 무결성 제약조건
  3. 도메인 무결성 제약조건
  4. 선점 무결성 제약조건
  • 정답: 4번 (선점 무결성 제약조건)
  • 해설: 관계 데이터 모델에서 사용하는 제약조건으로는 개체 무결성, 참조 무결성, 도메인 무결성 등이 있으며, 선점 무결성 제약조건은 존재하지 않습니다.

66번 문제: 소프트웨어 공학에서 "프로토타이핑 모델(Prototyping Model)"의 주요 목적은 무엇인가?

  1. 사용자의 요구사항을 정확히 파악하기 위해 시제품을 만들어 보는 것
  2. 소프트웨어의 성능을 개선하기 위해 반복적으로 테스트하는 것
  3. 소프트웨어의 유지보수 비용을 최소화하는 것
  4. 소프트웨어의 코드를 자동으로 생성하는 것
  • 정답: 1번
  • 해설: 프로토타이핑 모델은 사용자의 요구사항을 명확히 파악하고, 요구사항의 불확실성을 줄이기 위해 시제품(프로토타입)을 만들어 보는 소프트웨어 개발 방법론입니다.

67번 문제: 소프트웨어 테스트 중 "회귀 테스트(Regression Testing)"에 대한 설명으로 옳은 것은?

  1. 새로운 기능이 추가될 때만 수행하는 테스트
  2. 기존 기능이 변경되었을 때, 다른 부분에 영향을 미치지 않았는지 확인하는 테스트
  3. 시스템의 성능을 측정하기 위한 테스트
  4. 사용자 인터페이스(UI)를 중심으로 수행하는 테스트
  • 정답: 2번
  • 해설: 회귀 테스트는 기존 기능이 변경되었을 때, 그 변경이 다른 기능에 영향을 미치지 않았는지를 확인하는 테스트입니다.

68번 문제: 데이터베이스 설계 단계에서 "논리적 설계(Logical Design)"의 주요 작업으로 옳은 것은?

  1. 사용자 요구사항 분석
  2. 테이블 구조 정의
  3. 데이터베이스 파일 생성
  4. 하드웨어 선정
  • 정답: 2번
  • 해설: 논리적 설계 단계에서는 데이터베이스의 테이블 구조를 정의하고, 엔터티 간의 관계를 명확히 하는 작업을 수행합니다.

69번 문제: 정보보호의 3대 목표에 해당하지 않는 것은?

  1. 기밀성(Confidentiality)
  2. 무결성(Integrity)
  3. 가용성(Availability)
  4. 상호 운용성(Interoperability)
  • 정답: 4번 (상호 운용성)
  • 해설: 정보보호의 3대 목표는 기밀성, 무결성, 가용성입니다. 상호 운용성은 정보시스템의 호환성과 관련된 개념입니다.

70번 문제: 운영체제에서 "스레드(Thread)"에 대한 설명으로 옳지 않은 것은?

  1. 프로세스 내에서 실행되는 가장 작은 실행 단위이다.
  2. 같은 프로세스에 속한 스레드들은 메모리와 자원을 공유한다.
  3. 스레드는 프로세스보다 독립적이며, 별도의 메모리 공간을 할당받는다.
  4. 멀티스레딩은 응답성을 높이고, 자원 소모를 줄일 수 있다.
  • 정답: 3번
  • 해설: 스레드는 프로세스 내에서 실행되는 단위로, 같은 프로세스에 속한 스레드들은 메모리와 자원을 공유합니다. 스레드는 프로세스보다 독립적이지 않으며, 별도의 메모리 공간을 할당받지 않습니다.

반응형