class Static{
public int a = 20;
static int b = 0;
}
public class Test{
main(){
int a = 10;
Static.b = a;
Static st = new Static();
sout(Static.b++);
sout(st.b);
sout(a);
sout(st.a);
}
}
답 :
10
11
10
20
*풀이
Static.b = a ----> 10
st.b는 Static.b와 같은 메모리 영역이기 때문에 Static.b++에서 10을 출력 후 11로 바뀜
#include <stdio.h>
main() {
char a[] = "Art";
char* p = NULL;
p = a;
printf("%s\n, a);
printf("%c\n, *p);
printf("%c\n, *a);
printf("%s\n, p);
for(int i = 0; a[i] != '\0'; i++)
printf("%c", a[i]);
}
답 :
Art
A
A
Art
Art
*풀이
1byte | 1byte | 1byte | 1byte |
'A' | 'r' | 't' | '\0' |
a[0] | a[1] | a[2] | a[3] |
#include <stdio.h>
main() {
char* a = "qwer";
char* b = "qwtety";
for(int i = 0; a[i] != '\0'; i++)
for(int j = 0; b[j] != ]\0'; j++)
if(a[i] == b[j])
printf("%c", a[i]);
답 : qwe
*풀이
'q' | 'w' | 'e' | 'r' | '\0' | ||
a[0] | a[1] | a[2] | a[3] | a[4] | ||
'q' | 'w' | 't' | 'e' | 't' | 'y' | '\0' |
b[0] | b[1] | b[2] | b[3] | b[4] | b[5] | b[6] |
a[i] == b[j] 일때 조건이 참이면 a[i]를 출력
반복하며 만족하는 경우는
a[0] == b[0]
a[1] == b[1]
a[2] == b[3]
즉 qwe
( 1 ) : 연결형 통신에서 주로 사용되는 방식으로, 출발지와 목적지의 전송 경로를 미리 연결하여 논리적으로 고정한 후 통신하는 방식
( 2 ) : 비연결형 통신에서 주로 사용되는 방식으로, 사전에 접속 절차를 수행하지 않고 헤더에 출발지에서 목적지까지의 경로 지정을 위한 충분한 정보를 붙여서 개별적으로 전달하는 방식
<보기>
- 회선 교환 방식
- 데이터그램 방식
- 가상 회선 방식
- 메시지 교환 방식
답 :
(1) 가상 회선 방식
(2) 데이터그램 방식
데이터링크 계층의 프로토콜 중 하나로 터널링 프로토콜인 PPTP와 VPN의 구현에 사용하는 L2F의 기술적 강점들을 결합하여 만든 프로토콜이다. 자체적으로 암호화 및 인증 기능을 제공하지 않아 다른 보안 프로토콜과 함께 사용하는 경우가 많다.
답 : L2TP
*더보기
OSI 참조 모델
7 응용 계층
6 표현 계층
5 세션 계층
4 트랜스포트(전송) 계층 -> SSL : 데이터를 송수신하는 두 컴터 사이에 TCP/IP 계층과 어플리케이션 계층사이에서 인증,암호화, 무결성을 보장하는 업계 표준 프로토콜
3 네트워크 계층 -> IPSec : IP 패킷 단위의 데이터 변조 방지 및 은닉 기능을 제공하는 프로토
2 데이터 링크 계층 -> PPTP : 지점간 터널링 프로토콜, 두 대의 컴터가 직렬 인터페이스를 이용하여 통신, L2F : 데이터 링크 수준에서 캡슐화 가능, L2TP : L2F의 기술적 강점 결합, 자체적으로 암호화 및 인증 기능 제공 x
1 물리 계층
- 다른 컴퓨터에 로그인, 원격 명령 실행, 파일 복사 등을 수행할 수 있도록 다양한 기능을 지원하는 프로토콜 또는 이를 이용한 응용프로그램
- 데이터 암호화와 강력한 인증 방법으로 보안성이 낮은 네트워크에서도 안전하게 통신할 수 있다.
- 키(Key)를 통한 인증 방법을 사용하려면 사전에 클라이언트의 공개키를 서버에 등록해야 한다.
- 기본적으로 22번 포트를 사용한다.
답 : SSH
*더보기
TCP 접속에 사용되는 서비스별 포트 번호
- FTP : 21(다른 번호로 변경 가능) / 컴퓨터와 컴퓨터 통신 시
- TELNET : 23 / 원격 접속
- SMTP : 25 / 전자우편
- DNS : 53 / 도메인 IP 매핑
- HTTP : 80
#include <stdio.h>
main() {
int input = 101110;
int di = 1;
int sum = 0;
while(1){
if(input == 0) break;
sum = sum + (input ( 1 )( 2 )) * di;
di = di * 2;
input = input/10;
}
printf("%d", sum);
}
답 :
(1) %
(2) 10
*풀이
1 0 1 1 1 0
2⁵ 2⁴ 2³ 2² 2¹ 2⁰
32 + 0 + 8 + 4 + 2 + 0 = 46
몫이 0이 될때까지 나머지를 구함
10 ÷ 101110 몫 = 10111, 나머지 = 0
10 ÷ 10111 몫 = 1011, 나머지 = 1
10 ÷ 1011 몫 = 101, 나머지 = 1
10 ÷ 101 몫 = 10, 나머지 = 1
10 ÷ 10 몫 = 1, 나머지 = 0
10 ÷ 1 몫 = 0, 나머지 = 1
나머지
0 1 1 1 0 1
2⁰ 2¹ 2² 2³ 2⁴ 2⁵
-------------------------
0 + 2 + 4 + 8 + 0 + 32 = 46
IP의 주요 구성원 중 하나로, OSI 계층 모델의 네트워크 계층에 속한다.
네트워크 컴퓨터의 운영체제에서 오류메시지를 수신하거나, 전송 경로를 변경하는 등
오류 처리를 위한 제어 메시지를 주로 취급한다. 관련된 도구로 traceoute, ping이 있으며,
ping of death와 같은 네트워크 공격 기법에 활용되기도 한다.
답 : ICMP
*더보기
<TCP/IP 구조>
OSI | TCP/IP | 기능 |
응용 계층 표현 계층 세션 계층 |
응용 계층 | 응용 프로그램 간의 데이터 송수신 제공 TELNET, FTP, SMTP, DNS, HTTP 등 |
전송 계층 | 전송 계층 | 호스트들 간의 신뢰성 있는 통신 제공 TCP, UDP, RTCP |
네트워크 계층 | 인터넷 계층 | 데이터 전송을 위한 주소 지정, 경로 설정을 제공함 IP, ICMP, IGMP, ARP, RARP |
데이터 링크 계층 물리 계층 |
네트워크 엑세스 계층 | 실제 데이터(프레임)를 송수신 하는 역할 Ethernet, IEEE 802, HDLC,X.25, RS-232C, ARQ 등 |
복잡한 시스템을 개발하기 쉽도록 클래스나 객체들을 조합하는 패턴에 속하며, 대리자라는 이름으로도 불린다.
내부에서는 객체 간의 복잡한 관계를 단순하게 정리해 주고,외부에서는 객체의 세부적인 내용을 숨기는 역할
답 : Proxy
*더보기
디자인 패턴
생성
- 추상 팩토리 - 그룹으로 갱성 추상적 표현
- 빌더 - 인스턴스를 건축하듯 조합
- 팩토리 메소드 - 가상 생성자, 실제 생성은 서브 클래스가 담당
- 프로토 타입 - 원본 객체를 복제
- 싱글톤
구조
- 어댑터 - 기존 클래스를 이용하고싶지만 인터페이스가 일치하지 않을 때
- 브리지 - 구현부에서 추상층 분리, 기능과 구현을 두 개의 별도 클래스로 구현
- 컴포지트 - 복합 객체 안에 복합 객체가 포함되는 구조 구현
- 데코레이터 - 부가적 기능 추가를 위해 다른 객체를 덧붙이는 방식
- 퍼싸드 - 서브 클래스들 사이의 통합 인터페이스를 제공하는 Wrapper 객체가 필요함
- 플라이웨이트 - 인스턴스를 공유해서 사용함으로써 메모리를 절약
- 프록시 - 접근이 어려운 객체와 연결하려는 객체 사이에 인터페이스 역할, 네트워크 연결, 메모리 대용량 객체로 접근
행위
- 책임 연쇄 - 요청을 처리하는 개체들이 고리(Chain)로 묶여있어 해결될때까지 고리를 따라 책임 전가
- 커맨드 - 요청을 캡슐화하여 재이용하거나 취소 가능, 요청에 필요 정보를 저장하거나 로그에 남김
- 인터프리터 - SQL이나 통신 프로토콜 개발할때 사용
- 반복자(Iterator) - 자료 구조와 같이 접근이 잦은 객체에 대해 동일한 인터페이스를 사용하도록 하는 패턴
- 중재자(Mediator) - 수많은 객체들 간의 상호작용을 캡슐화
- 메멘토 - Ctrl + Z
- 옵서버 - 한 객테의 상태 변화는 개테에 상속된 다른 객체에게 변화 전달
- 상태 - 객체의 상태에 따라 동일한 동작을 다르게 처리해야 할 때 사
- 전략(Strategy) - 동일한 계열 알고리즘들을 개별적으로 캡슐화하여 상호교환
- 템플릿 메소드 - 상위 클래스에서 골격 정의, 하위 클래스에서 세부 처리
- 방문자
( 1 ) : 릴레이션을 구성하는 각각의 행을 의미하며, 파일 구조에서는 레코드에 해당함
( 2 ) : 데이터 개체를 구성하고 있는 속성들에 데이터 타입이 정의되어 구체적인 데이터 값을 가진 것으로,
실제 값을 가진 튜플을 의미함
( 3 ) : 튜플의 개수를 의미함
답 :
(1) 튜플
(2) 릴레이션 인스턴스
(3) 카디널리티
*더보기
asia = {'한국','중국','일본'}
asia.add('베트남')
asia.remove('일본')
asia.update({'한국','홍콩','태국'})
print(asia)
답 : { '한국','중국','베트남' ,'홍콩' ,'태국' }
*풀이
asia.add('베트남') --> asia = {'한국','중국','일본','베트남'}
asia.remove('일본') --> asia = {'한국','중국','베트남'}
asia.update({'한국','홍콩','태국'}) --> asia = {'한국','중국','베트남','홍콩','태국'}
답 :
SELECT 과목이름, MIN(점수) AS 최소점수, MAX(점수) AS 최대점수
FROM 성적
GROUP BY 과목이름 HAVING AVG(점수) >= 90;
( 1 ) 스키마는 데이터베이스의 전체적인 논리적 구조로, 모든 응용 프로그램이나 사용자들이 필요호 하는 데이터를 종합한 조직 전체의 데이터베이스이다.
( 2 ) 스키마는 실제로 저장될 레코드의 형식, 저장 데이터 항목의 표현 방법, 내부 레코드의 물리적 순서 등을 나타낸다.
( 3 ) 스키마는 사용자나 응용 프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
답 :
(1) 개념
(2) 내부
(3) 외부
'Study' 카테고리의 다른 글
OSI 7계층 (0) | 2024.04.23 |
---|---|
[정처기 실기] 오답 정리 23년 3회 (1) | 2024.04.18 |
[정처기 실기] 오답정리 (20년 2회) (1) | 2024.04.03 |
[정처기 실기] 오답정리 (20년 1회) (1) | 2024.04.03 |
[정처기 실기] 모의고사 2회 오답정리 (1) | 2024.03.28 |