20242

20문제 · 2024-2

  1. #1·코드 추적·난이도 보통·쪼잔함 2 (짜증)프로그래밍Java

    다음은 Java 코드에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력값을 작성하시오.

    class Main {
      public static void main(String[] args) {
        int[] a = new int[]{1, 2, 3, 4}; // ①
        int[] b = new int[]{1, 2, 3, 4}; // ②
        int[] c = new int[]{1, 2, 3};    // ③
    
        check(a, b); // ④
        check(a, c); // ⑤
        check(b, c); // ⑥
      }
    
      public static void check(int[] a, int[] b) { // ⑦
        if (a == b) { // ⑧
          System.out.print("O");
        } else { // ⑨
          System.out.print("N");
        }
      }
    }
    
  2. #2·단답형·난이도 쉬움·쪼잔함 2 (짜증)데이터베이스정규화

    다음 문제에서 설명하는 용어를 작성하시오.

    데이터를 중복시켜 성능을 향상시키기 위한 기법으로 데이터를 중복 저장하거나 테이블을 합치는 등으로 성능을 향상시키지만 데이터 무결성이 저하될 수 있는 기법

  3. #3·빈칸 채우기·난이도 보통·쪼잔함 2 (짜증)데이터베이스SQL

    다음은 SQL에 관한 문제이다. 아래 SQL 구문의 빈칸을 채우시오.

    테이블: 사원(사원번호(PK), 이름, 나이, 부서)

    1. 신입 사원이 들어와서 사원 테이블에 추가
    • INSERT INTO 사원(사원번호, 이름, 나이, 부서)
    • [ (㉠) (25105, '헤키스한', 30, '영업') ];
    1. 위에 신입사원을 검색해서 부서 테이블에 추가
    • INSERT INTO 부서(사원번호, 이름, 나이, 주소)
    • [ (㉡) 사원번호, 이름, 나이, '서울' FROM 사원
    • WHERE 이름 = '헤키스한'; ]
    1. 전체 사원 테이블을 조회하시오.
    • SELECT * [ (㉢) ] 사원;
  4. #4·단답형·난이도 쉬움·쪼잔함 4 (화병)데이터베이스

    다음 릴레이션의 Cardinality와 Degree를 작성하시오.

    이름나이주소취미
    한키스23서울독서
    아키스25순천뜨개질
    화키스20진주게임
    박키스40광명달리기

    Cardinality: ( ㉠ ) Degree: ( ㉡ )

  5. #5·단답형·난이도 보통·쪼잔함 2 (짜증)네트워크보안

    다음은 프로토콜에 대한 내용이다. 아래 내용을 읽고 알맞은 답을 작성하시오.

    • Network layer에서 IP 패킷을 암호화하고 인증하는 등의 보안을 위한 표준이다.
    • 기업에서 사설 인터넷망으로 사용할 수 있는 VPN을 구현하는 데 사용되는 프로토콜이다.
    • AH(Authentication Header)와 ESP(Encapsulating Security Payload)라는 두 가지 보안 프로토콜을 사용한다.
  6. #6·코드 추적·난이도 어려움·쪼잔함 3 (욕 나옴)프로그래밍Python

    다음 Python에 대한 문제이다. 아래 코드를 읽고 알맞은 출력 값을 작성하시오.

    def fnCalculation(x,y):
        result = 0
        for i in range(len(x)):
            temp = x[i:i + len(y)]
            if temp == y:
                result += 1
        return result
    
    a = "abdcabcabca"
    p1 = "ab"
    p2 = "ca"
    
    out = f"ab{fnCalculation(a,p1)}ca{fnCalculation(a,p2)}"
    print(out)
    
  7. #7·단답형·난이도 보통·쪼잔함 3 (욕 나옴)보안

    다음은 설명하는 내용을 확인하여 알맞은 알고리즘을 작성하시오.

    • 대칭 알고리즘으로 1997년 NIST(미국 국립기술표준원)에서 DES를 대체하기 위해 제정되었다.
    • 128비트, 192비트 또는 256비트의 가변 키 크기와 128비트의 고정 블록 크기를 사용한다.
    • 높은 안정성과 효율성, 속도 등으로 인해 DES 대신 전 세계적으로 많이 사용되고 있다.
  8. #8·단답형·난이도 보통·쪼잔함 2 (짜증)네트워크

    패킷 교환 방식 중에 연결형과 비연결형에 해당하는 방식을 작성하시오.

    1. 연결형 교환 방식
    2. 비연결형 교환 방식
  9. #9··난이도 보통·쪼잔함 4 (화병)소프트웨어공학

    다음 내용을 확인하고 [보기]에서 알맞은 답을 고르시오.

    • 실행 순서가 밀접한 관계를 갖는 요소를 모아 모듈로 구성한다.
    • 한 모듈 내부의 한 기능 요소에 의한 출력 자료가 다음 기능 요소의 입력 자료로서 제공되는 형태다.

    [보기] ㄱ. 기능적(functional) ㄴ. 우연적(Coincidental) ㄷ. 통신적(Communication) ㄹ. 절차적(Procedural) ㅁ. 시간적(Temporal) ㅂ. 순차적(Sequential) ㅅ. 논리적(Logical)

    보기 펼치기

    ① ㄱ ② ㄴ ③ ㅂ ④ ㄹ

  10. #10·빈칸 채우기·난이도 보통·쪼잔함 4 (화병)소프트웨어공학디자인패턴

    다음은 디자인 패턴에 관한 설명이다. 아래 설명에 알맞은 용어를 작성하시오.

    • 컬렉션 객체의 내부 구조를 노출하지 않고 순차적으로 접근할 수 있게 하는 패턴이다.
    • 이 패턴은 객체의 내부 표현 방식에 독립적으로 요소에 접근할 수 있도록 해준다.
    • 반복 프로세스를 캡슐화하여 클라이언트 코드에서는 컬렉션의 구체적 구현에 종속되지 않도록 한다.
  11. #11·단답형·난이도 어려움·쪼잔함 2 (짜증)네트워크

    아래 그림을 바탕으로 RIP을 구성하여 A -> F까지의 최단 경로 비용을 계산한 후, 흐름에 맞게 경로를 작성하시오.

    B -> 2 -> A B -> 2 -> D A -> 1 -> D D -> 2 -> C C -> 1 -> E C -> 5 -> F E -> 2 -> F

  12. #12·단답형·난이도 어려움·쪼잔함 2 (짜증)운영체제

    아래의 표를 확인하여 SRT 스케줄링의 평균 대기시간을 계산하여 작성하시오.

    프로세스도착시간서비스시간
    A08
    B14
    C29
    D35
  13. #13·코드 추적·난이도 ·쪼잔함 3 (욕 나옴)프로그래밍C언어

    다음 C언어에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력값을 작성하시오.

    #include <stdio.h>
    
    int main() {
        int arr[3][3] = {1, 2, 3, 4, 5, 6, 7, 8, 9};
        int *parr = arr[1];
        printf("%d", *(parr + 1) + *(parr + 2));
        return 0;
    }
    
  14. #14·코드 추적·난이도 어려움·쪼잔함 2 (짜증)프로그래밍Java

    다음 Java 언어에 대한 문제이다. 아래 코드를 확인하여 출력 결과를 작성하시오.

    class Main {
        public static void main(String[] args) {
            int[] a = {1, 2, 3, 4, 5, 6, 7, 8, 9};
            ODDNumber OE = new ODDNumber();
            System.out.print(OE.sum(a, true) + "," + OE.sum(a, false));
        }
    }
    
    interface Number {
        int sum(int[] a, boolean odd);
    }
    
    class ODDNumber implements Number {
        public int sum(int[] a, boolean odd) {
            int result = 0;
            for(int i = 0; i < a.length; i++) {
                if(odd && a[i] % 2 != 0 || !odd && a[i] % 2 == 0) {
                    result += a[i];
                }
            }
            return result;
        }
    }
    
    
  15. #15·코드 추적·난이도 ·쪼잔함 4 (화병)프로그래밍C언어

    다음 C언어에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력 결과를 작성하시오.

    #include <string.h>
    #include <stdio.h>
    
    void sumFn(char *d, const char *s) {
        while(*s) {
            *d = *s;
            d++;
            s++;
        }
        *d = '\0';
    }
    
    int main() {
        const char *str1 = "first";
        char str2[50] = "teststring";
        int result = 0;
    
        sumFn(str2, str1);
    
        for(int i = 0; str2[i] != '\0'; i++) {
            result += i;
        }
    
        printf("%d", result);
        return 0;
    }
    
  16. #16·빈칸 채우기·난이도 보통·쪼잔함 3 (욕 나옴)소프트웨어공학

    다음은 소프트웨어 설계에 대한 내용이다. 내용을 읽고 괄호 안에 알맞은 답을 작성하시오.

    • 어떤 모듈이 다른 모듈 내부의 논리적인 흐름을 제어하기 위해, 제어를 통신하거나 제어 요소를 전달하는 결합도이다.
    • 한 모듈이 다른 모듈의 상세 처리 절차를 알고 있어야 이들을 통제하는 경우나 처리 기능이 두 모듈에 분리되어 실현된 경우에 발생한다.

    ( ) Coupling

  17. #17·코드 추적·난이도 ·쪼잔함 4 (화병)프로그래밍Java

    다음 Java에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력 값을 작성하시오.

    class Main {
        public static void main(String[] args) {
            String str = "abacabcd";
            boolean[] seen = new boolean[256];
            System.out.print(calculFn(str, str.length() - 1, seen));
        }
    
        public static String calculFn(String str, int index, boolean[] seen) {
            if(index < 0) return "";
            char c = str.charAt(index);
            String result = calculFn(str, index - 1, seen);
            if(!seen[c]) {
                seen[c] = true;
                return c + result;
            }
            return result;
        }
    }
    
  18. #18·코드 추적·난이도 어려움·쪼잔함 4 (화병)프로그래밍C언어

    다음 C언어에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력 값을 작성하시오.

    #include <stdio.h>
    
    int main() {
        int a = 11;
        int b = 19;
        swap(a, b);
    }
    
    void swap(int a, int b) {
        switch(a) {
            case 1:
                b = 1;
            case 11:
                b = 2;
            default:
                b += 3;
        }
        printf("%d", a - b);
    }
    
  19. #19·코드 추적·난이도 ·쪼잔함 3 (욕 나옴)프로그래밍C언어

    다음 C언어 구조체에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력 값을 작성하시오.

    #include <stdio.h>
    
    struct node {
        int ni;
        struct node *n2;
    };
    
    int main() {
        struct node a = {10, NULL};
        struct node b = {20, NULL};
        struct node c = {30, NULL};
        struct node *head = &a;
        a.n2 = &b;
        b.n2 = &c;
        printf("%d", head->n2->ni);
        return 0;
    }
    
  20. #20·단답형·난이도 쉬움·쪼잔함 2 (짜증)프로그래밍Java

    다음은 Java에 대한 문제이다. 아래 코드를 확인하여 알맞은 출력 값을 작성하시오.

    class Main {
        public static void main(String[] args) {
            String str = "ITITESTSTRING";
            String[] result = str.split("T");
            System.out.print(result[3]);
        }
    }