정보처리기사/내용

정보처리기사 실기 기출문제 풀이 - 2021년 3회

내가 그린 코딩 그림 2023. 8. 31. 22:23
반응형

해설을 차근차근 추가하고 있어 해설이 없는 문제가 있을 수 있습니다.(프로그래밍 문제, 기출빈도가 낮은 문제 등)


1번 다음 Java 코드에 알맞는 출력 값

class Connection {
  private static Connection _inst = null;
  private int count = 0;
    static public Connection get() {
      if(_inst == null) {
      _inst = new Connection();
      return _inst; 
      }
    return _inst;
    }
  public void count() { count ++; }
  public int getCount() { return count; }
}
 
public class testcon {
  public static void main(String[] args) {
    Connection conn1 = Connection.get();
    conn1.count();
    Connection conn2 = Connection.get();
    conn2.count();
    Connection conn3 = Connection.get();
    conn3.count();
    
    System.out.print(conn1.getCount());
  }
}

정답

 

 

2번 다음은 정보 보호 기술인 AAA에 대한 설명이다. 각각 설명에 맞는 용어를 적으시오.

ㄱ. 시스템에 접근하기 전 접근을 시도하는 사용자의 신원을 검증

ㄴ. 검증된 사용자에게 어떤 수준의 권한 및 서비스를 허용

ㄷ. 사용자의 자원(시간, 정보, 위치 등)에 대한 사용 정보 등을 수집

 

정답

더보기

ㄱ. Authentication

ㄴ. Authorization

ㄷ. Accounting

 

인증(Authentication)

인가 및 권한부여(Authorization)

회계 및 계정관리(Accounting)

 

 

3번 데이터 제어어(DCL) 중 GRANT에 대해 설명하시오

 

정답

더보기

데이터베이스 사용자에게 사용 권한을 부여하는데 사용하는 명령어

 

 

4번 다음은 스푸핑 공격에 대한 설명으로, 괄호안에 들어갈 답안을 작성하시오

(  ) 스푸핑은 근거리 통신망 하에서 (  ) 메시지를 이용해 상대방의 데이터 패킷을 중간에서 가로채는 중간자 공격 기법이다. 이 공격은 데이터 링크상의 프로토콜인 (  )를 이용하는 특성으로 근거리 통신에서만 사용할 수 있는 공격이다.

 

정답

더보기

ARP

 

ARP(Address Resolution Protocol)

 

5번 다음은 Coupling에 대한 설명으로, 설명에 대한 Coupling의 종류를 영문으로 작성하시오

"어떤 모듈이 다른 모듈 내부 논리 조직을 제어하기 위한 목적으로 제어 신호를 이용해 통신하는 경우의 결합도이다. 하위 모듈에서 상위 모듈로 제어 신호가 이동해 상위 모듈에게 처리 명령을 부여하는 권리 전도 현상이 발생할 수 있다."

 

정답

더보기

제어(control) 결합도

 

결합도 약해지는 순서(자료가 제일 약함)

내용(Content) 결합도 : 한 모듈이 다른 모듈 내부 기능이나 자료를 직접 참조하거나 수정할 때의 결합도

공통(Common) 결합도 : 공유되는 공통 데이터 영역을 여러 모듈이 사용할 때의 결합도

외부(External) 결합도 : 어떤 모듈에서 선언한 데이터(변수)를 외부 다른 모듈에서 참조할 때의 결합도

제어(Control) 결합도 : 한 모듈이 다른 모듈의 상세한 처리 절차를 알고 있어 이를 통제하는 경우 혹은 처리 기능이 두 모듈에 분리되어 설계된 경우의 결합도

스탬프(Stamp) 결합도 : 두 모듈이 동일한 자료 구조를 조회하는 경우 결합도

자료(Data) 결합도 : 어떤 모듈이 다른 모듈을 호출하면서 매개 변수나 인수로 데이터를 넘겨주고 호출 받은 모듈이 받은 데이터에 대한 처리 결과를 다시 돌려주는 방식(파라미터를 넘겨주고 리턴받는 정말 자주 있는 경우)

 

내 공 외제 스자

=> 내 축구공 외제 쓰자

 

 

6번 다음은 OSI 7 Layer에 대한 설명으로, 다음 각 설명에 해당하는 계층을 작성하시오

ㄱ. 물리계층을 통해 송수신되는 정보의 오류와 흐름을 관리, 안전한 정보의 전달을 수행할 수 있도록 도와주는 역할

ㄴ. 데이터를 목적까지 가장 안전하고 빠르게 전달하는 기능

ㄷ. 수신자에서 데이터의 압축을 풀 수 있는 방식으로 된 데이터 압축

 

정답

더보기

ㄱ. 데이터링크

ㄴ. 네트워크

ㄷ. 표현

 

응표세전네데물 - APSTNDP(아파쓸땐엔돌핀)

7. 응용(Application) - 파일 전송, 정보 교환, 가상 터미널

6. 표현(Presentation) - 데이터 암호화, 데이터 압축, 형식 변환

5. 세션(Session) - 송수신 간 관련성을 유지, 대화 제어

4. 전송(Transport) - 다중화, 오류제어, 단말기 사이의 흐름 제어, TCP/UDP, 게이트웨이

3. 네트워크(Network) - 경로설정, 트래픽 제어, 빠르게 전달, 패킷, IP, 라우터

2. 데이터링크(Data Link) - 노드 사이의 흐름 제어, 오류검출, 랜카드, 브리지, 스위치

1. 물리(Physical) - 기계적, 전기적 특성, 리피터, 허브 등

 

 

7번 다음은 객체지향 추상화에 대한 설명으로, 괄호 안에 들어갈 용어를 작성하시오

( A )은/는 클래스들 사이의 전체 혹은 부분 같은 관계를 나타내는 것이고, ( B )은/는 한 클래스가 다른 클래스를 포함하는 상위 개념일 때 IS-A 관계라고 칭하며, 일반화 관계로 모델링한다.

 

정답

더보기

A. Aggregration

B. Generalization

 

 

8번 다음은 테스트 케이스의 구성요소에 대한 설명으로, 괄호 안에 들어갈 알맞는 보기를 고르시오

정답

더보기

1. 테스트조건

2. 테스트 데이터

3. 예상 결과

 

 

9번 아래에서 설명하는 테스트 기법을 작성하시오

"입력 자료 간 관계와 출력에 영향을 미치는 상황을 체계적으로 분석 후 효용성이 높은 테스트 케이스를 선정해 테스트하는 기법"

 

정답

더보기

Cause Effect Graph (원인 결과 그래프)

 

 

10번 다음에서 설명하는 블록 암호 알고리즘을 작성하시오

"이것은 미국 NBS(National Bureau of Satnadards, 현재 NIST)에서 국가 표준으로 정한 알고리즘으로, 64비트 평문을 64비트 암호문으로 암호화하는 대칭키 암호 알고리즘이다. 키는 7비트마다 오류 검출을 위한 정보가 1비트씩 들어가기 때문에 실질적으로는 56비트이다. 현재는 취약해 사용되지 않는다.

 

정답

 

 

11번 다음 JAVA 코드에 대한 알맞은 출력값을 작성하시오

public class testco {
 public static void main(String[] args) {
  int a = 3, b = 4, c = 3, d = 5;
  if((a == 2 | a == c) & !(c > d) & (1 == b ^ c != d)) {
   a = b + c;
    if(7 == b ^ c != a) {
     System.out.println(a);
    } else {
    System.out.println(b);
    }
  } else {
    a = c + d;
    if(7 == c ^ d != a) {
    System.out.println(a);
    } else {
    System.out.println(d);
    }
  }
 }
}

정답

 

 

12번 다음 C언에 코드에 대한 알맞은 출력값을 작성하시오

#include 
int main(){
  int *arr[3];
  int a = 12, b = 24, c = 36;
  arr[0] = &a;
  arr[1] = &b;
  arr[2] = &c;
 
  printf("%dn", *arr[1] + **arr + 1);
}

정답

 

 

13번 다음 실행값의 알맞은 결과값을 작성하시오

정답

 

 

14번 다음 파이썬 코드의 알맞은 출력값을 작성하시오

a,b = 100, 200 
print(a==b)

정답

더보기

False

 

 

15번 다음은 UML의 다이어그램에 대한 설명으로, 어떤 다이어그램에 대한 설명인지 작성하시오

"이 다이어그램은 문제 해결을 위한 도메인 구조를 나타내어 보이지 않는 도메인 안의 개념과 같은 추상적 개념을 기술하기 위해 나타낸 것이다.

또한, 소프트웨어의 설계 혹은 완성된 소프트웨어의 구현 설명을 목적으로 사용가능하다. 이 다이어그램은 속성(attribute)과 메서드(method)를 포함한다"

 

정답

더보기

클래스 다이어그램

 

 

16번 다음에서 설명하는 객체지향 디자인 패턴이 무엇인지 작성하시오

"부모(상위) 클래스에 알려지지 않은 구체 클래스를 생성하는 패턴이며, 자식(하위) 클래스가 어떤 객체를 생성할지를 결정하도록 하는 패턴이기도 하다. 부모(상위) 클래스 코드에 구체 클래스 이름을 감추기 위한 방법으로도 사용한다"

 

정답

더보기

팩토리 메서드

 

 

17번 다음 C언어 코드에 대한 알맞은 출력값을 작성하시오

#include 
 
struct jsu {
  char nae[12];
  int os, db, hab, hhab;
};
 
int main(){
  struct jsu st[3] = {{"데이터1", 95, 88}, 
                    {"데이터2", 84, 91}, 
                    {"데이터3", 86, 75}};
  struct jsu* p;
 
  p = &st[0];
 
  (p + 1)->hab = (p + 1)->os + (p + 2)->db;
  (p + 1)->hhab = (p+1)->hab + p->os + p->db;
 
  printf("%dn", (p+1)->hab + (p+1)->hhab);
}

정답

 

 

18번 다음은 파일구조(File Structures)에 대한 설명으로, 괄호 안에 들어갈 알맞은 답을 작성하시오

"파일구조는 파일을 구성하는 레코드들이 보조기억장치에 편성되는 방식으로 접근 방식에 따라 방식이 달라진다. 접근 방법 중, 레코드들을 키-값 순으로 정렬해 기록하고, 레코의 키 항목만을 모은 (  )을 구성해 편성하는 방식이 있으며, 레코드를 참조할 때는 (  )이 가리키는 주소를 사용해 직접 참조할 수 있다. 파일 구조에는 순차 접근, (  ) 접근, 해싱 접근 등이 있다"

 

정답

더보기

인덱스(또는 색인)

 

 

19번 다음 설명에 대한 알맞은 답을 영문약어로 작성하시오

"(  )는 사용자가 그래픽을 통해 컴퓨터와 정보를 교환하는 환경을 말한다. 이전까지 사용자 인터페이스 키보드를 통해 명령어로 작업을 수행시켰지만 (  )에서는 키보드, 마우스 등을 이용해 화면의 메뉴 중 하나를 선택해 작업을 수행한다.

화면에 아이콘을 띄어 마우스를 이용해 화면에 있는 아이콘을 클릭해 작업을 수행하는 방식으로 대표적으로 마이크로소프트사의 Windows, 애플사의 Mac 운영체제 등이 있다"

 

정답

 

 

20번 다음은 소프트웨어 통합 테스트에 대한 설명으로, 괄호 안에 들어갈 알맞은 답을 작성하시오

"( A ) 방식은 하위 모듈부터 시작해 상위 모듈로 테스트를 진행하는 방식이며, 이 방식을 사용하기 위해서는 ( C )가 필요하다. ( C )는 이미 존재하는 하위 모듈과 존재하지 않는 상위 모듈에 대한 인터페이스 역할을 한다"

 

정답

더보기

A : 상향식

C : 테스트 드라이버

 

상향식 통합 - 상위 모듈이 없으므로, 상위 모듈 역할을 하는 테스트 드라이버 이용

하향식 통합 - 하위 모듈이 없으므로, 하위 모듈 역할을 하는 스텁(Stub)을 이용

반응형