분류 전체보기 477

[이산수학] 부정, 논리곱, 논리합 |negation, conjunction, disjunction(4/107)

6 logical operators negation 부정 conjunction 논리곱 disjunction 논리합 exclusive OR implication biconditional 1. 부정 Negation operator p 가 명제일 때, p의 부정은 ¬p 기호로 나타낸다. ¬p : p의 부정이다. 예를 들면, p : '제로콜라는 1500원이다.'라는 명제가 있다면, ¬p은 p 명제의 부정으로 ¬p : '제로콜라가 1500원이라는 것은 사실이 아니다' 라고 표현할 수 있다. 영어 문장으로는 'it is not the case that'이라는 표현을 사용한다. 2. 논리곱 conjunction operator 논리곱은 ^ 기호를 이용하여 표현한다. 명제 p, q의 논리곱은 p^q로 나타낸다. 논리곱..

Math/이산수학 2021.07.19

[이산수학] 명제 논리, 명제 변수, 합성 명제 |propositional logic, propositional variables, compound propositions(3/107)

이산 수학 Discrete Mathematics 명제 논리propositional logic명제 변수propositional variables합성 명제compound propositions 1. 명제 논리 propositional logic 란 무엇인가? 명제 논리는 논리 분야 중에 하나로 명제를 조작/합성해서 더 복잡한 명제를 형성하는 방법을 연구한다. 또한 합성하거나 수정한 명제의 특성과 논리적 관계를 연구하기도 한다. 명제 논리는 propositional logic = sentential logic = statement logic 로 불리기도 한다. mathematical statements are constructed by combining one or more than one propositio..

Math/이산수학 2021.07.19

[이산수학] 명제 논리란 무엇인가? - Motivation & Introduction to Propositional Logic

명제 논리 Motivation & Introduction to Propositional Logic 1. propositional logic 명제 논리란 무엇인가? propositional logic은 두 부분으로 구성된다. 1) proposition 명제 2) logic 논리 우선, logic이란 무엇인가? logic은 추론을 하는 학문 영역이다. logic을 통해 수학적 명제를 이해하고 추리할 수 있다. 그러한 과정을 통해 수학적 명제를 증명하거나 반증할 수 있다. logic의 목적은 타당한 주장/증명을 하기 위함이다. 수학적 명제가 참임을 증명해내면, 이를 theorem 정리라고 한다. propositional logic 명제 논리는 logic의 한 분야에 해당한다. 그렇다면, proposition ..

Math/이산수학 2021.07.19

[이산수학] What is Discrete Mathematics? - Neso Academy

Introduction to Discrete Mathematics - YouTube Introduction to Discrete Mathematics - Neso Academy 이산수학 Discrete Mathematics why study? > 컴퓨터공학 과목의 기반이 된다 ex) 컴파일러, 데이터베이스, 컴퓨터 보안, 오토마타 이론, 운영체제 등 > 다음과 같은 문제를 해결할 수 있다 정렬 지름길 찾기 그래프 그리기 수의 조합 찾기 암호화 등 what is discrete mathematics 이산수학 discrete mathematics은 '이산적'인 대상을 다루는 학문이다. '이산적 discrete'이라는 것은 뚝뚝 떨어져 구분되거나(distinct) 연속적이지 않은 것(not connected)..

Math/이산수학 2021.07.19

[C++] 객체 지향 프로그래밍, 클래스, 접근 지시자 - 씹어먹는 C++ 4강

객체 지향 프로그래밍의 도래 프로그래밍 언어의 발전 1세대 프로그래밍 언어는 진공관 선을 조정해서 명령을 내리는 수준이었다. ex) ENIAC 컴퓨터 내장 메모리가 만들어지면서 2세대 프로그래밍 언어가 등장한다. 대표적인 사례가 assembly language이다. 0과 1로 이루어진 기계어에 문자열을 대응시킨 것에 가깝다. 그래서 저수준 low-level 언어라고 한다. 그러나 2세대 언어는 구조가 체계적이지 않아 논리구조가 뒤엉켜 오류를 찾기 힘든 '스파게티 코드'가 만들어지기 쉬웠다. 그래서 등장한 것이 3세대 프로그래밍 언어 - procedural programming language이다. pascal, C가 대표적이다. 'procedure'를 지향한다는 것은 다르게 표현하면, 함수를 지향하는 것..

[C++] C++ new, delete - 씹어먹는 C++ 3강

서론 object oriented programming 메모리 관리는 중요한 문제 프로그램이 실행되려면, 모든 변수의 주소값이 확정되어야 한다. 이런 문제를 해결하기 위해 'heap' 공간이 생겼다. 프로그램 실행시에 자유롭게 할당/해제할 수 있는 공간이다. heap은 stack에 비해 안정성이 떨어진다. C에서와 같이 힙에서의 메모리 할당을 위해 malloc, free 함수를 이용할 수 있다. C++에서는 이외에도 malloc에 대응하는 new와 delete에 대응하는 free를 사용할 수 있다. new와 free 사용법 type *pointer = new type; delete pointer; #include int main() { int *p = new int; // new int -> sizeof..