본문 바로가기

정보처리기사_실기

모의고사 정리

  • 1) 소프트웨어를 설계하기에 앞서 무엇을 개발해야 하는지 요구사항을 정의하고 분석 및 관리하는 프로세스를 연구하는 것이다. 요구사항 변경의 원인과 처리 방법을 이해하고 요구사항 관리 프로세스의 품질을 개선하여 소프트웨어 프로젝트 실패를 최소화하는 것을 목표로 하는 것은 무엇인지 쓰시오.
    • 요구 공학
  • 2)응용프로그램 개발 시 운영체제나 프로그래밍 언어 등에 있는 라이브러리를 이용할 수 있도록 규칙 등을 정의해놓은 인터페이스로, 프로그래밍 언어에서 특정한 작업을 수행하기 위해 사용되거나, 운영체제의 파일 제어, 화상 처리, 문자 제어 등의 기능을 활용하기 위해 사용되는 것은 무엇인지 쓰시오.
    • API
  • 3) 급증하는 다량의 데이터를 분석하여 정보화하고 이를 여러 계층의 사용자들이 효율적으로 사용할 수 있도록 한 데이터베이스. 신속 정확한 의사결정으로 경쟁력을 확보하기 위하여 의사결정용 데이터베이스의 필요성으로 등장하였으며, 다양한 원본 데이터베이스로부터 정제되어 추출된 데이터만을 저장하고 필요한 인덱스를 생성한 후 데이터의 다차원 분석 도구로 이를 분석하여 의사결정에 필요한 자료를 얻는다.
    • 데이터 웨어하우스
  • 4) 운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임이다. 운영체제의 목적 4가지를 쓰시오.
    • 처리 능력 향상, 사용가능도 향상, 신뢰도 향상, 반환 시간 단축
  • 5) 가상 기억장치 관련 용어 중 스래싱(Thrashing)의 개념을 쓰시오.
    • 프로세스의 처리 시간보다 페이지 교체에 소요되는 시간이 더 많아지는 현상이다.
  • 6) 구문과 의미를 갖는 정형화된 언어를 이용해 요구사항을 수학적 기호로 표현한 후 이를 분석하는 과정으로, 요구사항 분석의 마지막 단계에서 이루어지는 요구사항 분석 기법을 쓰시오.
    • 정형 분석
  • 7) 온라인 업무 처리 형태의 하나로 네트워크상의 여러 이용자가 실시간으로 데이터베이스의 데이터를 갱신하거나 검색하는 등의 단위 작업을 처리하는 방식으로, 여기서 단위 작업은 트랜잭션을 의미하며 데이터 무결성을 위해 각 트랜잭션은 그 전체가 완전히 행해지든지, 아니면 전혀 행해지지 않든지 둘 중 하나가 되도록 처리되어야 한다. 이 시스템은 일반적으로 빠른 응답 시간을 요구하며, 개개의 레코드를 효율적으로 조회하고 수정할 수 있도록 정규화 한다.
    • OLTP
  • 8) (    )는 컴퓨터 네트워크 상에서 HTTP/HTTPS, SMTP 등을 이용하여 XML을 교환하기 위한 통신 규약으로, 웹 서비스에서 사용되는 메세지의 형식과 처리 방법을 지정한다. (    )는 기본적으로 HTTP 기반에서 동작하기 때문에 프록시와 방화벽의 영향 없이 통신이 가능하다. (    )의 주요요소로는 Envelope, Header, Body 등이 있다.
    • SOAP
  • 9) 1부터 70까지의 난수를 구하는 프로그램을 C언어로 구현한 것, 괄호에 적합한 라이브러리 함수는?
#include <stdio.h>
#includ <stdlib.h>
main() {
	for (int i = 0; i < 10; i++) {
    	printf("%d\n", (1+(     ) % 70));
    }
}
  • rand() → 난수 생성 함수

 

  • 10) Java
public class Test {
	public static void main(String[] args) {
①    	String str = "Operation";
②        String rst = change(str);
⑨        System.out.println(str.charAt(3));
⑩        System.out.println(rst.charAt(3));
    }
    
③    static String change(String x) {
④    	String y = new String();
⑤        int n = x.length() - 1;
⑥        for(int i = n; i >= 0; i--)
⑦        	y += x.charAt(i);
⑧        return y;
    }
}
  • ① : 문자열 변수 str을 선언하고 "Operation"으로 초기화
  • ② : 문자열 변수 rst를 선언하고 str의 값 Operation을 인수로하여 change메소드를 호출한 다음 반환받은 값을 rst에 저장
  • ③ : change메소드의 시작, Operation을 문자열 변수 x로 받음
  • ④ : 문자열 변수 y를 선언한다, 객체변수이므로 초기값이 없을때는 new 예약어 사용
  • ⑤ : 정수형 변수 n을 선언하고, 문자열 변수 x의 길이에서 1을 뺀 (9-1 = 8)로 초기화
  • ⑥ : i가 n(8)에서 시작하여 1씩 감소하면서 0보다 크거나 작은동안 ⑦번 반복수행
  • ⑦ : y의 값에 x에서 i번째에 있는 문자를 더함, 앞의 문자에 뒤의 문자를 붙여서 반환
  • ⑧: y값 반환
  • ⑨ : str의 3번째에 있는 문자 출력
  • ⑩ : rst의 3번째에 있는 문자 출력
x n i x.charAt(i) y
Operation 8 8 n n
    7 o no
    6 i noi
    5 t noit
    4 a noita
    3 r noitar
    2 e noitare
    1 p noitarep
    0 O noitarepO
    -1