객체(Object)와 클래스(Class)

Programming Language/Java 2019. 7. 31. 21:36

프로그래밍 언어에는 절차지향언어와 객체지향언어 두 가지가 있다. 객체(Object)와 클래스(Class)라는 개념은 후자인 객체지향언어에서 쓰이는 개념이다. 객체 지향 언어 (OOP) 프로그램 상에 취급하는 모든 대상을 객체로 생각하고, 그렇게 만들어진 객체를 중심으로 코드를 조립해가며 프로그램을 짜는 방법 객체는 프로그램 내에서 문자열/ 숫자/ 배열 처럼 값으로 취급 또한, 객체는 변수에 담거나 인수로 전달되거나 반환값으로 나오기도 하며, 객체 고유의 기능도 활용이 가능함 클래스 (Class) 비슷한 특성을 가진 객체들을 그룹화 시키는 틀을 나타내는 추상적인 개념 동일 클래스에 속한 객체들에 공통점을 준다. 동일한 동작을 수행하며 동일한 속성(단, 객체마다 다른 값)을 가지게 된다. 추상데이터형 구현 ..

Article Thumbnail
WAN 과 LAN

Network 2019. 7. 27. 16:29

Network 란? 특정 전송매체 연결로 구성된 장치들의 집합 전송매체 유선 LAN Cable 무선 Wifi 장비간 연결 동축 케이블, 광 케이블 등 구성장치 Computer PC, 워크스테이션, 서버 등 Mobile 노트북, 탭북, 스마트폰, 게임장치 등 연결 장비 Router, Switch, Hub 등 "Network는 구성장치들이 연결된 범위에 따라 LAN과 WAN으로 구분할 수 있다." LAN ( Local Area Network ) 근거리 통신망 조직 내나 동일 건물 내 등 비교적 좁은 지역을 연결하기 위한 네트워크 통신 주체인 자신이 포함된 동일한 지역에서의 네트워크 구축 관리자가 직접 관리하는 방식 CSMA/CD (Carrier Sense Multiple Access / Collision D..

Article Thumbnail
1174 30분 전(if는 아직...)

Wargame/CodeUp 2019. 7. 26. 22:11

문제 수호는 30분 전으로 돌아가고 싶은 1人 이다. 공백을 기준으로 시간과 분이 주어진다. 그러면 이 시간을 기준으로 30분전의 시간을 출력하시오. 예) 12 35 =====> 12 5 12 0 ======> 11 30 11 5 ======> 10 35 아직 조건문을 배우지 않았기 때문에 if나 3항연산자를 사용하지 않고 풀기 바랍니다. 금지 키워드 : if / ? / switch 입력 시와 분이 입력된다. (시의 범위 : 0~ 23) (분의 범위 : 0~ 59) 출력 입력된 시간의 30분 전의 시간을 출력하시오. 입력 예시 12 35 출력 예시 12 5 코드 #include int main() { int hour, minute, trans, i; scanf("%d %d", &hour, &minute)..

1173 30분전

Wargame/CodeUp 2019. 7. 26. 17:21

문제 수호는 30분 전으로 돌아가고 싶은 1人 이다. 공백을 기준으로 시간과 분이 주어진다. 그러면 이 시간을 기준으로 30분전의 시간을 출력하시오. 예) 12 35 =====> 12 5 12 0 ======> 11 30 11 5 ======> 10 35 입력 시와 분이 입력된다. (시의 범위 : 0~ 23) (분의 범위 : 0~ 59) 출력 입력된 시간의 30분 전의 시간을 출력하시오. 입력 예시 12 35 출력 예시 12 5 코드 #include int main() { int hour, minute, i; scanf("%d %d", &hour, &minute); if(minute-30

1162 당신의 사주를 봐드립니다 1

Wargame/CodeUp 2019. 7. 26. 15:56

문제 태어난 해, 월, 일을 입력받아 사주팔자를 보는 프로그램을 작성하시오. 사주를 보는 방법) 세 수(년,월,일)가 주어지면, (년 - 월 + 일)에 마지막 숫자가 0이면 "대박"을 출력, 그렇지 않으면 "그럭저럭"을 출력하세요. 입력 세 정수가 입력으로 주어진다. 순서대로 년도, 월, 일 이다. 출력 년도 - 월 + 일의 마지막 숫자가 0이면 "대박"을 , 그렇지 않으면 "그럭저럭"을 출력하시오. 입력 예시 1902 2 10 출력 예시 대박 코드 #include int main() { unsigned short int year, mon, day, sum; // 생년월일을 넣을 변수 year, mon, day와 연산 후 값을 저장할 변수 sum 선언 // 생년월일은 음수가 없으므로 편의상 unsigne..

1175 특별한 공 던지기 1

Wargame/CodeUp 2019. 7. 26. 15:41

문제 슬기는 체육 선생님과 공던지기로 아이스크림 내기를 하게 됐다. 공을 던져서 50m ~ 60m 사이에 공이 들어가면 슬기가 이기게 되고, 그 외에 공이 떨어지면 체육선생님이 이기게 룰을 정했다. 슬기가 던진 공의 위치가 입력으로 주어지면 50이상 60이하이면 "win"을 출력하고, 그 외에는 "lose"를 출력하시오. 입력 슬기가 던진 공의 위치가 입력으로 주어진다.(실수) 출력 50이상 60이하이면 win을 출력, 그 외에는 lose를 출력하시오. 입력 예시 50.213 출력 예시 win 코드 #include int main() { float score; scanf("%f", &score); if(50

네트워크 전송에서의 Get / Post 방식

Network 2019. 7. 25. 21:07

웹 페이지 실행과정 1. 사용자가 원하는 페이지로 이동하기 위해 URL을 브라우저 주소창에 작성 2. Enter키 입력 시, Server 내부에서 Client(사용자)의 요청에 응답하기 위해 처리 3. 입력된 주소에 해당하는 웹 페이지를 Client(사용자)에게 화면으로 표현 용어 정리 HTTP(Hyper Text Tranfer Protocol) : 웹 클라이언트와 웹 서버간 전송을 위한 통신규약 하이퍼 텍스트(Hyper Text) : 사용자가 원하는 부분을 비순차적으로 읽어내는 문서 형식 (일반적인 Text의 경우, 위에서 아래로 순차적으로 읽어 내림) Get / Post 방식은 HTTP 프로토콜에서 데이터 전송을 위해 지원하는 7가지 메소드 중 일부인 메소드이다. 사용한 메소드 방식의 종류에 따라 H..

Article Thumbnail
1160 아르바이트 가는 날

Wargame/CodeUp 2019. 7. 22. 15:37

문제 주원이는 월, 수, 금, 일 아르바이트를 간다. 다음은 요일의 순서이다. 월요일 화요일 수요일 목요일 금요일 토요일 일요일 요일의 번호가 입력으로 주어지면 그 날이 아르바이트 가는 날이면 "oh my god"를 가는 날이 아니면 "enjoy"를 출력하시오. 입력 입력으로 요일의 번호가 하나 주어진다.(정수) 출력 아르바이트 가는 날이면 "oh my god"를 가는 날이 아니면 "enjoy"를 출력하시오. 입력 예시 1 출력 예시 oh my god 코드 #include int main() { int day; scanf("%d", &day); if(day%2) printf("oh my god"); // day를 2로 나눈 값이 0이 아니면( = 참) 홀수(월, 수, 금, 일)이므로 알바가는 날 else..

Git이란?

Knowledge 2019. 7. 18. 18:26

Git (깃) 리눅스 개발자인 리누스 토발즈에 의해 개발된 분산 버전 관리 시스템 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율한다. 소프트웨어 개발에서 소스 코드 관리에 주로 사용되지만 어떠한 집합의 파일의 변경사항을 지속적으로 추적하기 위해 사용되기도 한다. Git 은 형상 관리 도구의 일종이다 형상 관리란? 소프트웨어의 변경사항을 체계적으로 추적하고 통제하는 것 형상 관리 도구 종류 CVS : 1980년대 만들어진 형상관리 툴 SVN : 2000년에 CVS 대체하기 위해 만들어 졌으며 현재까지도 사용 GIT : 매우 빠른 속도와 분산형 저장 시스템으로 SVN보다 많은 기능을 지원 SVN 와 GIT 작동방식 SVN : 중앙 집중식 소스코드 관리 방식 GIT : ..

Article Thumbnail
사설 IP vs 공인 IP, NAT 방식

Network 2019. 7. 15. 03:52

사설 IP (Private Address, 비공인 주소) 공중 인터넷 망을 통해서는 갈 수 없는 주소 (=외부망으로 내보내면 안되는 주소) 모든 Service Provide 장비는 사설 IP 차단 내부 네트워크 상에서만 사용가능한 주소로, 주로 가정용 또는 기업 내부 네트워크에서 사설 IP를 부여하며 외부망과 통신할 때는 공유기/라우터를 통해 NAT방식으로 공인 IP로 변환한 후 인터넷에 접속한다. 사설 IP 대역 Class 사설 IP 범위 A Class 10.0.0.0 ~ 10.255.255.255 B Class 172.16.0.0 ~ 172.31.255.255 C Class 192.168.0.0 ~ 192.168.255.255 공인 IP (Public Address) 전 세계에서 유일한 공인된 주소 ..

Article Thumbnail
파일 입출력

Programming Language/C language 2019. 7. 10. 13:44

1. 스트림(Stream)이란? 실행중인 프로그램과 외부 장치를 연결(interface)해 주는 논리적 연결 "파일 입/출력 함수를 이용하여 프로그램이 실행되는 경우, 변수나 배열의 내용을 하드디스크(파일)에 저장하고, 다음 실행 시 하드디스크로부터 데이터를 메모리에 불러들여 다시 사용할 수 있다." 표준 입/ 출력 스트림 표준입출력 장치를 위한 스트림으로, 운영체제에 의해 자동 생성 및 관리 된다. - 표준 입력 스트림 : stdin - 표준 출력 스트림 : stdout - 표준 에러 스트림 : stderr 파일 입/출력 : 디스크 장치가 대상이 되며, 표준 입출력 장치가 아니기 때문에 운영체제에 의해 관리되지 않는다 >> 사용자가 직접 파일 연결 과정에 관여해야 한다. 2. 파일 입출력을 위한 스트림..

메모리 구조, 동적 메모리 할당

Programming Language/C language 2019. 7. 10. 12:19

1. 메모리 구조 (Memory Structure) Process (프로세스) : 프로그램이 실행되는 동안 실행파일을 실행 시키면 파일은 운영체제에 의해 필요한 영역 즉, 메모리(memory)를 할당받게 된다. 프로세스 메모리 구조는 다음과 같이 크게 4가지로 구분된다. 코드 영역(Code Segment) 이름 그대로 실행할 프로그램의 코드가 저장되는 메모리 공간. CPU는 코드 영역에 저장된 명령문들을 하나씩 가져가서 실행을 함. CPU가 읽기 때문에 Text Section 이라고도 한다. 데이터 영역(Data Segment) 전역변수 / static(정적) 변수 데이터 영역 변수 : 프로그램의 시작과 동시에 메모리 공간에 할당되어 프로그램 종료 시에 소멸한다. 힙 영역(Heap Segment) 사용자..

Article Thumbnail