컴퓨터일반정답(2021-05-22 / 429.2KB / 1,118회)
2019 계리직 컴퓨터일반 해설 곽후근 (2022-09-28 / 243.2KB / 753회)
컴 퓨 터 일 반 문 1. 동기식 전송(Synchronous Transmission)에 대한 설명으로 옳지 않은 것은? ① 정해진 숫자만큼의 문자열을 묶어 일시에 전송한다. ② 작은 비트블록 앞뒤에 Start Bit와 Stop Bit를 삽입하여 비트블록을 동기화한다. ③ 2,400bps 이상 속도의 전송과 원거리 전송에 이용된다. ④ 블록과 블록 사이에 유휴시간(Idle Time)이 없어 전송효율이 높다. 문 2. 어떤 프로젝트를 완성하기 위해 작업 분할(Work Breakdown)을 통해 파악된, 다음 소작업(activity) 목록을 AOE(Activity On Edge) 네트워크로 표현하였을 때, 이 프로젝트가 끝날 수 있는 가장 빠른 소요시간은? 소작업 이름 소요시간 선행 소작업 a 5 없음 b 5 없음 c 8 a, b d 2 c e 3 b, c f 4 d g 5 e, f ① 13 ② 21 ③ 24 ④ 32 문 3. 다음에 제시된 입력 데이터를 엑셀 서식의 표시 형식 코드에 따라 출력한 결과로 옳은 것은? 입력 데이터 : 1234.5 표시 형식 코드 : #,##0 ① 1,234 ② 1,235 ③ 1,234.5 ④ 1,234.50 컴 퓨 터 일 반 A 책형 10쪽 문 4. 객체지향 소프트웨어 개발 및 UML Diagram에 대한 설명이다. ㉠~㉢에 들어갈 내용을 바르게 짝지은 것은? ◦ ( ㉠ )은/는 외부에서 인식할 수 있는 특성이 담긴 소프트웨어의 골격이 되는 기본 구조로, 시스템 전체에 대한 큰 밑그림이다. 소프트웨어 품질 요구 사항은 ( ㉠ )을/를 결정하는 데 주요한 요소로 작용한다. ◦ ( ㉡ )은/는 두 개 이상의 클래스에서 동일한 메시지에 대해 객체가 다르게 반응하는 것이다. ◦ ( ㉢ )은/는 객체 간의 메시지 통신을 분석하기 위한 것으로 시스템의 동작을 정형화하고 객체들의 메시지 교환을 시각화한다. ㉠ ㉡ ㉢ ① 소프트웨어 아키텍처 다형성 시퀀스 모델 ② 유스케이스 다형성 시퀀스 모델 ③ 클래스 다이어그램 캡슐화 상태 모델 ④ 디자인 패턴 캡슐화 상태 모델 문 5. 공개키 암호방식에 대한 설명으로 옳은 것은? ① 송신자는 전송메시지에 대한 MAC(Message Authentication Code)을 생성하고 수신자는 그 MAC을 점검함으로써 메시지가 전송과정에서 변조되었는지 여부를 확인한다. ② 송신자는 수신자의 개인키를 이용하여 암호화한 메시지를 송신하고 수신자는 수신한 메시지를 자신의 공개키를 이용하여 복호화한다. ③ 송수신자 규모가 동일할 경우, 공개키 암호방식이 대칭키 암호방식보다 더 많은 키들을 필요로 하기 때문에 인증기관이 키 관리를 담당한다. ④ 키 운영의 신뢰성을 공식적으로 제공하기 위하여 인증기관은 고객별로 개인키와 키 소유자 정보를 만들고 이를 해당 고객에게 인증서로 제공한다. 문 6. 온라인에서 멀티미디어 콘텐츠의 불법 유통을 방지하기 위해 삽입된 워터마킹 기술의 특성으로 옳지 않은 것은? ① 부인 방지성 ② 비가시성 ③ 강인성 ④ 권리정보 추출성 문 7. 프로세스 관리 과정에서 발생할 수 있는 교착상태(Deadlock)를 예방하기 위한 조치로 옳은 것은? ① 상호배제(Mutual Exclusion) 조건을 제거하고자 할 경우, 프로세스 A가 점유하고 있던 자원에 대하여 프로세스 B로부터 할당 요청이 있을 때 프로세스 B에게도 해당자원을 할당하여 준다. 운영체제는 프로 세스 A와 프로세스 B가 종료되는 시점에서 일관성을 점검하여 프로 세스 A와 프로세스 B 중 하나를 철회시킨다. ② 점유대기(Hold and Wait) 조건을 제거하고자 할 경우, 자원을 점유한 프로세스가 다른 자원을 요청하였지만 할당받지 못하면 일단 자신이 점유한 자원을 반납한다. 이후 그 프로세스는 반납 하였던 자원과 요청하였던 자원을 함께 요청한다. ③ 비선점(No Preemption) 조건을 제거하고자 할 경우, 프로세스는 시작시점에서 자신이 사용할 모든 자원들에 대하여 일괄할당을 요청한다. 일괄할당이 이루어지지 않을 경우, 일괄할당이 이루어 지기까지 지연됨에 따른 성능저하가 발생할 수 있다. ④ 환형대기(Circular Wait) 조건을 제거하고자 할 경우, 자원들의 할당 순서를 정한다. 자원 Ri가 자원 Rk보다 먼저 할당되는 것으로 정하 였을 경우, 프로세스 A가 Ri를 할당받은 후 Rk를 요청한 상태에서 프로세스 B가 Rk를 할당받은 후 Ri를 요청하면 교착상태가 발생하므로 운영체제는 프로세스 B의 자원요청을 거부한다. 문 8. 순차 파일과 인덱스 순차 파일에 대한 설명으로 옳은 것의 총 개수는? ㄱ. 순차 파일에서의 데이터 레코드 증가는 적용된 순차 기준으로 마지막 위치에서 이루어진다. ㄴ. 순차 파일에서는 접근 조건으로 제시된 순차 대상 필드 값 범위에 해당하는 대량의 데이터 레코드들을 접근할 때 효과적이다. ㄷ. 순차 파일에서의 데이터 레코드 증가는 오버플로우 블록을 생성 시키지 않는다. ㄹ. 인덱스 순차 파일의 인덱스에는 인덱스 대상 필드 값과 그 값을 가지는 데이터 레코드를 접근할 수 있게 하는 위치 값이 기록된다. ㅁ. 인덱스 순차 파일에서는 인덱스 갱신없이 데이터 레코드를 추가 하거나 삭제하는 것이 가능하다. ㅂ. 인덱스 순차 파일에서는 접근 조건에 해당하는 인덱스 대상 필드 값을 가지는 소량의 데이터 레코드를 순차 파일보다 효과적으로 접근할 수 있다. ㅅ. 인덱스를 다중레벨로 구성할 경우, 최하위 레벨은 순차 파일 형식으로 구성된다. ① 2개 ② 3개 ③ 4개 ④ 5개 컴 퓨 터 일 반 A 책형 11쪽 문 9. Java 프로그램의 실행 결과로 옳은 것은? public class B extends A { int a = 20; public B() { System.out.print("다"); } public B(int x) { System.out.print("라"); } } public class A { int a = 10; public A() { System.out.print("가"); } public A(int x) { System.out.print("나"); } public static void main(String[] a){ B b1 = new B(); A b2 = new B(1); System.out.print(b1.a + b2.a); } } ① 다라30 ② 다라40 ③ 가다가라30 ④ 가다가라40 문 10. C 언어로 작성된 프로그램의 실행 결과로 옳은 것은? #include double h(double *f, int d, double x){ int i; double res = 0.0; for(i=d-1; i >= 0; i--){ res = res * x + f[i]; } return res; } int main() { double f[] = {1, 2, 3, 4}; printf("%3.1f ", h(f, 4, 2)); return 0; } ① 11.0 ② 26.0 ③ 49.0 ④ 112.0 문 11. (가), (나)에서 설명하는 악성 프로그램의 용어를 바르게 짝지은 것은? (가) 사용자 컴퓨터의 데이터를 암호화시켜 파일을 사용할 수 없도록 한 후 암호화를 풀어주는 대가로 금전을 요구하는 악성 프로그램 (나) ‘○○○초대장’ 등의 내용을 담은 문자 메시지 내에 링크된 인터넷 주소를 클릭하면 악성 코드가 설치되어 사용자의 정보를 빼가 거나 소액결제를 진행하는 악성 프로그램 (가) (나) ① 스파이웨어 트로이목마 ② 랜섬웨어 파밍(Pharming) ③ 스파이웨어 피싱(Phishing) ④ 랜섬웨어 스미싱(Smishing) 문 12. 다음에서 설명하는 디자인 패턴으로 옳은 것은? 클라이언트와 서브시스템 사이에 ○○○ 객체를 세워놓음으로써 복잡한 관계를 구조화한 디자인 패턴이다. ○○○ 패턴을 사용하면 서브시스템의 복잡한 구조를 의식하지 않고, ○○○에서 제공하는 단순화된 하나의 인터페이스만 사용하므로 클래스 간의 의존관계가 줄어들고 복잡성 또한 낮아지는 효과를 가져 온다. ① MVC pattern ② facade pattern ③ mediator pattern ④ bridge pattern 문 13. SQL의 명령을 DDL, DML, DCL로 구분할 경우, 이를 바르게 짝지은 것은? DDL DML DCL ① RENAME SELECT COMMIT ② UPDATE SELECT GRANT ③ RENAME ALTER COMMIT ④ UPDATE ALTER GRANT 컴 퓨 터 일 반 A 책형 12쪽 문 14. ㉠과 ㉡에 들어갈 용어로 바르게 짝지은 것은? ( ㉠ )은/는 구글에서 개발해서 공개한 인공지능 응용프로그램 개발용 오픈소스 프레임워크이다. 이 프레임워크를 사용할 때 인공 지능 소프트웨어가 이미지 및 음성을 인식하기 위해서는 신경망의 ( ㉡ ) 모델을 주로 사용한다. ㉠ ㉡ ① 텐서플로우 논리곱 신경망 ② 알파고 퍼셉트론 ③ 노드레드 인공 신경망 ④ 텐서플로우 합성곱 신경망 문 15. 아래에 제시된 K-map(카르노 맵)을 NAND 게이트들로만 구성한 것으로 옳은 것은? ab cd 00 01 11 10 00 1 0 0 0 01 1 1 1 0 11 0 1 1 0 10 1 1 0 0 ① ② ③ ④ 문 16. 다음은 숫자를 처리하는 C 프로그램이다. 프로그램에서 ㉠과 ㉡에 들어갈 내용과 3 2 1 4를 입력하였을 때의 출력결과를 바르게 짝지은 것은? (단, 다음 프로그램에 문법적 오류는 없다고 가정한다.) ㉠ ㉡ 출력 결과 ① lt+a lt+b 1 2 3 4 ② lt+a lt+b 1 2 4 ③ lt[a] lt[b] 4 3 2 1 ④ lt[a] lt[b] 4 2 1 문 17. 엑셀 시트를 이용해 수식을 실행한 결과, 값이 나머지와 다른 것은? ① =GCD(A1,A6) ② =MEDIAN(A1:A6) ③ =MODE(A1:A6) ④ =POWER(A1,A6) #include #include void a (int n, int *num) { for (int i = 0; i < n; i++) scanf("%d", &(num[i])); } void c(int *a, int *b) { int t; t = *a; *a = *b; *b = t; } void b(int n, int *lt) { int a, b; for (a = 0; a < n-1; a++) for (b = a + 1; b < n; b++) if (lt[a] > lt[b]) c ( ㉠ , ㉡ ) ; } int main() { int n; int *num; printf("How many numbers?"); scanf("%d", &n); num = (int *)malloc(sizeof(int) * n); a(n, num); b(n, num); for (int i = 0; i < n; i++) printf("%d ", num[i]); } 컴 퓨 터 일 반 A 책형 13쪽 문 18. RISC(Reduced Instruction Set Computer)에 대한 설명으로 옳은 것의 총 개수는? ㄱ. 칩 제작을 위한 R&D 비용이 감소한다. ㄴ. 개별 명령어 디코딩 시간이 CISC(Complex Instruction Set Computer)보다 많이 소요된다. ㄷ. 동일한 기능을 구현할 경우, CISC보다 적은 수의 레지스터가 필요하다. ㄹ. 복잡한 연산을 수행하려면 명령어를 반복수행하여야 하므로 CISC의 경우보다 프로그램이 복잡해진다. ㅁ. 각 명령어는 한 클럭에 실행하도록 고정되어 있어 파이프라인 성능을 향상시킬 수 있다. ㅂ. 마이크로코드 설계가 어렵다. ㅅ. 고정된 명령어이므로 명령어 디코딩 속도가 빠르다. ① 2개 ② 3개 ③ 4개 ④ 5개 `문 19. 참조 무결성에 대한 설명으로 옳지 않은 것은? ① 검색 연산의 수행 결과는 어떠한 참조 무결성 제약조건도 위배 하지 않는다. ② 참조하는 릴레이션에서 튜플이 삭제되는 경우, 참조 무결성 제약조건이 위배될 수 있다. ③ 외래 키 값은 참조되는 릴레이션의 어떤 튜플의 기본 키 값과 같거나 널(NULL) 값일 수 있다. ④ 참조 무결성 제약조건은 DBMS에 의하여 유지된다. 문 20. 프로세스(Process)와 쓰레드(Thread)에 대한 설명으로 옳지 않은 것은? ① 프로세스 내 쓰레드 간 통신은 커널 개입을 필요로 하지 않기 때문에 프로세스 간 통신보다 더 효율적으로 이루어진다. ② 멀티프로세서는 탑재 프로세서마다 쓰레드를 실행시킬 수 있기 때문에 프로세스의 처리율을 향상시킬 수 있다. ③ 한 프로세스 내의 모든 쓰레드들은 정적 영역(Static Area)을 공유한다. ④ 한 프로세스의 어떤 쓰레드가 스택 영역(Stack Area)에 있는 데이터 내용을 변경하면 해당 프로세스의 다른 쓰레드가 변경된 내용을 확인할 수 있다. - 수고하셨습니다 -