SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0

Size: px
Start display at page:

Download "SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0"

Transcription

1 차례 SNU 컴퓨터과학이여는 세계 (Computational Civilization) Part 년의축적 2 그도구의실현 Prof. Kwangkeun Yi Department of Computer Science & Engineering 3 소프트웨어, 지혜로짓는세계 4 응용 : 인간지능 / 본능 / 현실의확장 이전 이전 년의축적 년의축적 2 그도구의실현 2 그도구의실현 3 소프트웨어, 지혜로짓는세계 3 소프트웨어, 지혜로짓는세계 4 응용 : 인간지능 / 본능 / 현실의확장 4 응용 : 인간지능 / 본능 / 현실의확장

2 다음 소프트웨어 년의축적 2 그도구의실현 3 소프트웨어, 지혜로짓는세계 컴퓨터 (universal turing machine) 라는 마음의도구 를다루는방법 소프트웨어 (turing machine): 지혜와언어로짜고짓는 소프트웨어는무섭다 : 구체적인실천소프트웨어 4 응용 : 인간지능 / 본능 / 현실의확장 사람이 만들고 기계가 실행하고 소프트웨어를잘만들방법 개괄 알고리즘 (algorithm) 일하는방도푸는솜씨박차 언어 (language) 표현하는방식담는그릇고삐 푸는솜씨, 알고리즘과복잡도 컴퓨터문제풀이법비용의계층컴퓨터로풀수있는쉬운문제와어려운문제의경계 담는그릇, 언어와논리 언어의계층. 번역과실행 프로그래밍언어의두개의중력 프로그래밍 = 논리증명

3 알고리즘 알고리즘은컴퓨터로돌릴수있는문제푸는방도 하나의소프트웨어 = 하나의튜링기계 소프트웨어 ( 튜링기계 ) 는어떤문제를푸는것 컴퓨터는소프트웨어를실행 = 문제풀이를자동으로 진행 묻게된다 : 더좋은 ( 싸고빠른 ) 방법? 있다면얼마나더좋은가? 더좋기는불가능한가? 경계는어디인가? 현실적인비용으로해결가능한문제들 알고리즘예 책읽기 그렇지않은문제들 자연수 n( 2) 이주어졌을때 1 2 n 을 계산하기 주머니의숫자중에서제일큰숫자를찾기 장보기목록에있는모든걸장바구니에담았는지 확인하기 그녀가마음속에품은자연수알아맞추기. 1 부터 n 사이에있다. 그녀는예 / 아니오만답할수있다. a n = a a }{{} n 계산하기 뒤죽박죽인숫자를크기순서로나열하기 패스워드해킹하기 자연수인수분해하기 알고리즘복잡도 복잡도증가속도 시간과메모리소모량 입력크기의함수로 결국어떻게되는지 (asymptotic complexity) n n 2 2 n n! , , , ,024 3,628, ,048,576 2,432,902,008,176,640, ,073,741,824 너무크다! > 10 39

4 알고리즘복잡도표기법 O(f(n)) ( 입력크기 n) = f(n) 의상수배보다작다는뜻 복잡도 O(1) O(log n) O(n) O(n 2 ) 알고리즘스텝횟수가 상수이면 log n + 10, 9871 log n 등이면 n + 10, 999n + 9, 2016n 18 등이면 999n 2 + 9, 2016n n 18 등이면 복잡도 n 이 2 배가되면일컫기를 O(1) 변함없다상수 constant O(log n) 약간의상수만큼커진다로그 logarithmic O(n) 2 배커진다선형 linear O(n log n) 2 배보다약간더커진다엔로그엔 n log n O(n 2 ) 4 배커진다제곱배 quadratic O(n k ) ( 상수 k) 2 k 배커진다 k 승배, 다항 polynomial O(k n ) ( 상수 k > 1) k n 배커진다기하급수배 exponential 알고리즘복잡도예 책읽기 : O(n) O(n!) n n 배정도커진다 2 계승배 factorial 자연수 n( 2) 이주어졌을때 1 2 n 을 계산하기 : O(n) 주머니의숫자중에서제일큰숫자를찾기 : O(n) 장보기목록에있는모든걸장바구니에담았는지 확인하기 : O(n 2 ) 그녀가마음속에품은자연수알아맞추기. 1 부터 n 사이에있다. 그녀는예 / 아니오만답할수있다 : O(n), O(log 2 n) a n = a a }{{} n 계산하기 : O(n), O(log 2 n) 뒤죽박죽인숫자를크기순서로나열하기 : O(n 2 ), O(n log 2 n) n 자리자연수패스워드해킹하기 : O(10 n ) n 자리자연수인수분해하기 : O(10 n ) 현실적 (n k ) vs 비현실적 (k n ) P 클래스문제 그문제를푸는알고리즘의복잡도가 O(n k ) 인문제 n: 입력의크기, k: 상수 O(n k ): 컴퓨터성능이곱하기로빨라지면, 같은시간에처리할수있는입력의크기도곱하기로는다. O(k n ): 컴퓨터성능이곱하기로빨라져도, 같은시간에처리할수있는입력의크기는더하기로는다. k n 의무시무시함 : 초 > 우주의나이 알고리즘복잡도 : O(log n), O(n log n), O(n), O(n 1.5 ), O(n 28 ), 현실적인비용 으로컴퓨터가풀수있는문제실제로는 현실적 이려면 : O(n 3 ) 이하여야 일단 O(n k ) 가찾아졌다면, 우리는늘 k를 3이하로줄일수있었다.

5 컴퓨터로 풀려고 할 때의 질문 컴퓨터로(자동으로) 풀기 어려운 문제인지 아닌지를 미리 알고 싶다 컴퓨터에게 쉽고 어려운 문제의 경계? 쉬운 문제: P 클래스 문제. 어려운 문제: P 클래스 바깥의 문제. 어려운 문제인지를 판별하는 방법? 알고리즘 찾아나선다 P 알고리즘이 찾아졌다면 쉬운 문제다 P 알고리즘을 못찾겠다면? 계속 열심히 찾으면 나올까? 아예 그런 알고리즘은 없는 것일까? 어려운 문제인지 판별하는 방법? 경계더듬기: P 클래스 vs N P 클래스 N P 클래스 문제의 정의: 어려운 문제 = P 클래스 바깥의 문제 P 바깥의 문제가 존재하나? 그 쪽 경계로 가까이 가보자. 예-아니오 문제(decision problem)이고 예 라는 답을 운에 기대어 현실적인 비용non-deterministic polynomial 으로 할 수 있으면. 그래서, 이렇게도 정의한다: 예 라고 답한 근거를 받아서 그 근거가 맞는지를 현실적인 비용에 확인할 수 있는 문제 답을 받아서 = 운에 기대어 이므로 경계의 문제 = N P지만 P인지는 아직 모르겠는

6 N P 문제의예 아주흔하다 주어진지도위의모든도시들을한번씩만방문하는경로가있을까? ( 해밀턴경로 Hamiltonian path ) 주어진예산으로주어진지도의도시들을다방문하고돌아올수있을까? 주어진부울식 boolean formula 이참이되게할수있을까? 주어진자연수를인수분해하라 1차원의아미노산실을접어서 3차원의단백질구조물을만들라. 단, 만들어진구조를유지하는데필요한에너지가어느이하여야한다 1000만관객을넘기는영화를제작하라. 제작중에 n번디자인선택을해야한다 오리무중 : P N P? 아직아무도모름 정말어려운문제인지가아리송한경계의문제들 (N P) 이것들이혹시쉬운문제 (P) 는아닐까? 현재의디지털컴퓨터 ( 튜링기계 ) 로는아마도 P N P 라고추측 P N P라면 어려운문제의시작 / 경계가 N P이지않을까 아슬아슬하므로 : 운에기대기만하면 P로넘어가지만 P는될수없다니 현실적인알고리즘은없다고판정하는방법 (1/3) N P 문제들의온순한성질때문에가능 : N P 문제중제일어려운문제가존재한다! Cook 1971년 : 모든 N P 문제중에서부울식만족시키기문제 satisfiability problem (SAT) 가제일어렵다 모든 N P 문제를다항비용으로부울식만족시키기문제 satisfiability problem 로각색해서건너풀수있다 현실적인알고리즘은없다고판정하는방법 (2/3) 지렛대 건너풀기 problem reduction 문제 A 를문제 B 로건너풀수있다 reducible = B 를풀면 A 가풀린다 예 ) 곱하기 를 더하기 로 예 ) k- 번째로큰수찾기 를 정열 로 B 는 A 보다어렵다 ( 정확히는, B 는적어도 A 만큼 어렵다 )

7 현실적인알고리즘은없다고판정하는방법 (3/3) N P 문제들중에서제일어려운문제가존재하므로 맞닥뜨린문제가그런 왕초 문제만큼어렵다면 그리고 P N P가사실이라면 ( 그렇다고추측 ) 즉, P 바깥에문제들이존재한다면 맞닥뜨린문제는 P 바깥에있는것이확실하다 즉, 맞닥뜨린문제는컴퓨터로풀수있지만현실적인비용으로는불가능하다주의 : 이방법은가정 P N P 아래에서믿을만 sound 하지만완전하진않다. not complete 어쩔것인가? 주변의흔한문제들이 N P 문제들이다, 컴퓨터로풀고싶다. 알고리즘의조건 = 모든입력에정확한답을내기 조건을느슨하게하면어떨까? 모든입력 을 흔한입력 으로 정답 을 적당한답 으로 동원하는기법 통밥heuristic : 맞을듯한직관. 선택기로에서기대어 지체없이진행 무작위randomization : 통밥의낭패를막는데유효 통밥과무작위 컴퓨터로불가능한문제들 아이러니 / 미스테리 통밥 heuristic 과무작위 randomization 가잘작동 흔한경우에정답에가까운답을내놓는다 ( 통밥 ) 드문경우에만낭패 ( 통밥 ) 왜그럴까? 비현실적인비용의덫에걸리지않는페인팅모션 ( 무작위 ) 알고리즘의복잡도가널뛰는것을안정시킨다 ( 무작위 ) 당연히존재하겠지요 명확히존재 : 예 ) 멈춤문제 halting problem 무수히많다 문제 1개 = 함수 1개 ( 자연수에서예-아니오로가는 ) ( 입력과답의짝을자연수하나로표현가능 ) 그런함수의개수는 2 N 위의개수는자연수의개수 N (sw의개수 ) 보다 무한히많다

8 알고리즘 만들때의 흔한 기본기 모조리 훑기exhaustive search 인구조사 기억하며 풀기dynamic programming 미로찾기: 모든 경우를 차례로하면서 나눠풀어 합치기divide-and-conquer 최대공약수: 2, 3, 4, 로 나눠보기 되돌아가기backtracking 양자 컴퓨팅(quantum computing) 피보나치 수열 값 양자현상을 이용 중첩superposition 얽힘entanglement 확률진폭probability amplitude 양자컴퓨터의 성질 못함 질러놓고 다듬기iterative improvement 로봇-대피소 짝짖기 (일단 짝짖고 겹친경로 바꾸기) 정열 (일단 줄세우고 어긋난 이웃 바꾸기) 양자 알고리즘(quantum algorithm) 튜링기계와 동일: 기계적인 계산의 한계를 넓히지는 단, 훨씬 빨리(시간) 훨씬 알뜰하게(메모리) 계산 양자 인수분해(quantum factorization) 알고리즘 1994 Shor. 수학에서 알려진 사실을 이용: 자연수 N 의 인 근본적으로 확률 알고리즘probabilistic algorithm : 높은 확률 로 답이 나타난다 데이터를 중첩시켜 연산 효율을 높임 답이 다른 후보들과 양자안에 중첩되어 있음 알고리즘 연산 = 답이 매우 높은 확률진폭을 가지도록 하기 연산을 끝내고 양자를 관찰하면 매우 높은 확률로 답이 나타남 수분해 1. N 보다 작은 임의의 자연수 r을 선택 2. GCD(r, N )이 1이 아니면 N 의 인수. 아니면, 3. 아래 숫자열을 계산 r1 mod N, r2 mod N, r3 mod N, 4. 위 숫자열에는 주기 p가 존재한다. 5. GCD(N, rp/2 + 1)와 GCD(N, rp/2 1)가 매우 큰 확률로 1이 아니다(N 의 인수가 된다). (p가 홀수면 다시 반복) 이 과정을 양자 알고리즘으로 옮기자.

9 양자현상을 이용해서 구현 다항시간에 가능 m z } { 1. 입력 큐빗: m개의 큐빗qbit 에 0 1(1) 부터 m z } { 1 1(2m 1)까지 같은 확률로 중첩시킴 2. 출력 큐빗: 입력큐빗과 동일하게 중첩시킴 3. 입출력 큐빗에 서로 해당하는 숫자를 얽혀놓음 양자 탐색(quantum search) 알고리즘 1996 Grove. 데이터가 아무렇게나 널려있는 경우 O( n)에 가능 i 4. 출력 큐빗에 r mod N 을 계산하는 레이저를 쏜다. 번호에 해당하는 데이터라고 하자 i는 m개의 큐빗에 중첩되어 있는 1,, 2m 1. (이만큼의 숫자열 계산이 중첩덕분에 한꺼번에 가능) 5. 출력 큐빗을 관찰; 입력 큐빗에는 관찰한 결과를 데이터들과 일렬번호들은 두 양자에 따로 중첩해 넣는다 (n개의 데이터는 log2 n개의 큐빗에 중첩해서 저장가능) 만들었던 i들만 남는다 6. 숫자열 주기 p = 입력 큐빗에 남은 것들의 차이. 이를 감지하는 레이저를 쏜다 데이터는 일렬번호가 있고, 찾고자 하는 것은 주어진 데이터와 해당 일렬번호를 두 양자사이에 얽혀놓는다 준비 끝 양자 탐색 본 과정 아래 과정을 O( n)번 반복하고 관찰하면 매우 높은 확률로 답이 나타남 (n의 경우마다 예를들어 n 1번, 10 n + 4번 등을 반복하면 충분하다는 뜻) 1. 일렬번호가 중첩되있는 큐빗에 레이저 를 쏴서, 찾고자 하는 번호만 그 확률진폭probability amplitude 을 반대 방향으로 뒤집는다 2. 그렇게 변한 확률진폭의 평균을 구한 후, (대략적으로) 평균의 두배에서 각 확률진폭을 다시 빼는 레이저 를 쏜다 3. 그러면 찾고자 하는 일렬번호의 확률진폭은 증가하고 다른 것은 줄어든다

10 언어(language) 소프트웨어: 사람이 만들고 컴퓨터가 실행 SW의 표현 튜링기계 부품들(유한개의 상태, 유한개의 심볼, 큰 간격 소프트웨어: 사람이 만들고 컴퓨터가 실행 큰 간격: 컴퓨터가 이해하는 언어 vs 사람이 편히쓰는 언 어 유한개의 규칙표)로 폰노이만 기계어로 인텔(x86) 기계어로 보다 상위의 언어들로 SW를 표현하는 언어: 프로그래밍 언어 (programming language) 튜링기계의 규칙표 혹은 기계어는 너무 하위의 언어 나날이 복잡해지는 소프트웨어를 표현하는 컴퓨터가 이해하는 언어 (기계어) Mac: PowerPC 기계어 PC: Pentium 기계어 Galaxy: Arm 기계어 iphone: Arm 기계어 모두 튜링-완전turing-complete 그러나 사람에겐 너무 원시적 그릇으로는 무리 분자배열로 짜장면을 표현하는 셈 해결책 Coq 언어계층과 자동번역 언어의 계층: 상위의 상위의 언어를 고안 그 언어들 사이의 번역사슬 번역사슬의 맨 위는 사람에게 편한 상위의 언어 번역사슬의 맨 아래는 기계에게 편한 기계어

11 ML Scala Python Java

12 C x86 Dalvik 번역기(compiler) 출발어 L, 도착어 L L로 짜여진 모든 프로그램을 같은 일을 하는 L 프로그램으로 번역 컴퓨터 언어들 사이의 번역은 항상 자동으로 가능 단어의 뜻은 하나로 고정되 있다 사용되는 정황에 따라 달라지지 않는다 번역의 원리: 조립식compositional 으로 불변성질invariant 유지하기 전체의 번역 결과는 부분의 번역결과를 가지고 조립 조합이 쉽도록: 각 결과는 같은 조건(invariant)을 만족

13 자동번역원리의예 출발어 E ::= n E + E E E E 도착어 C ::= push n add sub mult C.C 해석실행 (interpretation) 컴퓨터가소프트웨어를실행 컴퓨터를보편만능이게하는핵심아이디어 보편만능의튜링기계 : 테입에표현된 17개심볼의문자열 ( 프로그램, 소프트웨어, 튜링기계 ) 을해석실행 해석실행 : 일상에서우리가늘하는 ( 1+2 ) 컴퓨터는해석실행기 interpreter 전기회로로구현된 ( 폰노이만기계, Pentium, Arm) 실행기 번역사슬의맨아래언어 ( 기계어 ) 의실행기 메모리에표현된기계어프로그램을해석실행소프트웨어구현된해석실행기 interpreter 도가능 해석실행기를컴퓨터가해석실행 ( 해석실행이두겹으로겹침 ) 언어정글 프로그래밍언어의두개의뿌리 튜링기계 turing machine (Alan Turing) 상위로상위로 : 기계에명령하는언어 C, Java, C++, C#, JavaScript, Objective C, Python, PHP, Scala, Swift, Rust 등 람다계산법 lambda calculus (Alonzo Church) 상위로상위로 : 값을계산하는언어 ML, OCaml, Haskell, F#, Lisp, Clojure, Rua, Python, Scala, C++14 등 최신언어들은두방식모두를지원 기계의중력 vs 람다의중력 기계의중력 명령하며기계상태를변화시키는주문 요리법, 장보기목록 a 0 람다의중력 b read a a+b b b+1 기계는없다. 값을계산하는식. 산수스타일 초등학교때부터보아온산수언어. 10 n=1 n2 P Q 이고 P Q 라고하자. 그러면 P c Q = U 이고 P Q c = 이고 P Q c U 이다. 프로그래밍언어의요건 수학언어의요건 다른기원은다른방식의생각을유도하는 프로그래밍언어를탄생시킴

14 람다계산법 (lambda calculus)(1/2) 람다계산법 (lambda calculus) (2/2) x 구슬 ( 색깔대신이름 x) λx.e 눈사람 ( 색깔은 x) E E 나란히있기 3 = λs.(λz. s(s(s z))) }{{} 3 + n m = λs.(λz.ns(msz)) n m = λs.(λz.n(ms)z) T = λx.(λy.x) F = λx.(λy.y) and a b = a b F zero? n = n (λx.f ) T repeat E = (λf.(λx.f(xx))(λx.f(xx))) E 논리는언어의거울 논리추론의징검다리 ( 람다중력권 ) 컴퓨터세계에서언어와논리는동전의양면일뿐, 같은것이다증명하기 프로그램짜기 A B A B A B A A B B 논리적인비약없이새로운사실을확인해가는과정. 참인사실혹은사실이라고가정한것들로부터시작. 공짜없이새로운데이터를만들어가는과정. 기초적인데이터에서부터시작. 기초적인데이터는정수, 문자, 참거짓등. Ạ. B A B A B B A 사실을기반으로해서새로운사실들을만듬. 만들어가는과정은근거없는건너뛰기없이, 논리적으로누구나수긍하는추론의징검다리를밟고가는과정만있다. 이미만든데이터를가지고새로운데이터들을만듬. 새데이터를만드는과정은공짜가없다. 사용하는프로그래밍언어에서제공하는프로그램조립방식을써서만든다. A A B A B A A B Ạ. C C Ḅ. C

15 논리증명나무 거울 : 증명하기 = 프로그램짜기 (1/2) A B A B 데이터뭉치만들기 (A B) (A C) A B A (A B) (A C) A C B C B C A (B C) (A B) (A C) (A (B C)) A A B A A B B 데이터뭉치사용하기 Ạ. B A B 함수만들기 A B A B 함수사용하기 거울 : 증명하기 = 프로그램짜기 (2/2) A A B A B A 데이터뭉뚱그리기 거울의효능 A B Ạ. C Ḅ. C C 뭉뚱그린데이터사용하기 A 함수의인자를사용하기 프로그램짜기전 : 짤프로그램의구도잡기 타입type 이라는언어로겉얼개를표현참논리식 타입 프로그램짜고나서 : 짠프로그램이무난히작동할지살피기 무난히작동 = 타입에맞게돈다 논리분야의타입이활용되던모습 ( 년대) 그렇다면프로그램에서도가능하겠지 (1970-현재)

16 짤프로그램의구도잡기 타입으로 ( 보통명사 로 ) 프로그램얼개를표현 결혼하기 : 남자 여자 부부 사랑하기 : 부부 사랑 아기만들기 : 부부 사랑 아기 가족만들기 : 남자 여자 가족 가족만들기 (x,y) = let couple = 결혼하기 (x,y) ( 남자 와 여자 가 부부 를만들고 ) let love = 사랑하기 (couple) ( 부부 가 사랑 을만들고 ) let baby = 아기만들기 (couple, love) ( 부부 가 사랑 으로 아기 를만들고 ) 짠프로그램이무난히작동할지검진하기 (1/2) 프로그래머의불안 기획한얼개에따라잘메꾼걸까? 그래서제대로작동하는프로그램일까? 만페이지가넘는, 대하소설보다복잡한흐름 프로그램실수는고스란히드러날것이다 in (couple, baby) ( 그런 부부 와 아기 가 가족 이다 ) 프로그램검진 vs 다른분야 만든것 프로그램 기계 / 건물 / 약물디자인 실행기 컴퓨터 자연 바램 실행에대해미리확인 작동에대해미리확인 안심 생각대로돌것이다 생각대로작동할것이다 확인도구 컴퓨터과학의성과 자연과학의성과 짠프로그램이무난히작동할지검진하기 (2/2) 자동검진이가능 과거 : 개인의기예에의존하던프로그램의완성도 현재, 미래 : 누구나의기술로한발전진 자동검진 컴퓨터는더이상맹목적이지않다 프로그램을검진해서통과한것만실행 f(x) = x+1 sum(f) = f(0)+f(1) 무게 ( 춘향이 )+ 무게 ( 그네 )

17 요약(abstraction)의 그물 SW는 복잡하다 컴퓨터과학에서 늘 동원하는 지혜: 모두 포섭하면서 간 단히 프로그램 검진에서도: 요약 모든 디테일을 보는 것은 비현실적 외부입력 가짓수가 너무 많고, 만들어지는 현상이 너무 복잡: 기하급수로 커지며 속수무책combinatorial explosion 다양한 수준의 요약을 동원: 10 무게(춘향이) + 8 타입으로 요약: 정수 양수음수로 요약: 양수 구간으로 요약: 100과 3000사이 SW는 복잡하다 less-382(23,822 LoC) 자연물 만큼 복잡 포유류 뇌의 1만개 뉴런의 넷트웍, Ecole Polytechnique Fe de rale de Lausanne, Blue Brain Project, 2008

18 SW 제작의어려움 고백 : 컴퓨터분야는아직미숙합니다 프로그램의규모와복잡도가점점커짐 프로그램복잡성의증가속도 >> hw 성능의성장속도 sw는가스다. Software is gas. 프로그램은기계가자동으로실행함 분야의역사 겨우 5-60 년 기계는우리가바라는바를실행하지않음 기계는 sw 에적힌바를실행할뿐 그래서 장보기 = 우유 1 리터, 신라면 4 봉지, 그리고쌀과자두사오기. 미숙하기때문에 = 기회가많다. 모든상황을고려해야 사소한실수가없어야 프로그램의실행을 미리완벽히알기 가어려움 자동으로는불가능 : 증명됨 (1936년, Alan Turing) 사람이확인해가야 : 다양한도구로비용절감 미숙하기때문에 = 지금 Newton, Galileo, Curie, 와같이살고있다. 현재의기술수준 : 걸음마 3 발짝, 초보수준 컴퓨터분야발전속도가빠르다? (1/3) 컴퓨터속도 : 10 7 배 /50 년발전 컴퓨터분야발전속도가빠르다? (2/3) 다른분야와얼추비슷 : 배발전 /100년 에너지분야 : 10 7 배 /100년발전 10 1 hp/hr ( 하인 ) hp/hr ( 원전 1GW/hr) 10 3 flops/cpu ENAC(1945) flops/core BM Sequoia(2010) 교통분야 : 10 9 배 /100 년발전 10 2 j ( 가마 ) j (Delta )

19 컴퓨터분야발전속도가빠르다? (3/3) 하드웨어 : 다른분야와비슷한발전 소프트웨어 : 많이미개함 크기만증가 : 휴대폰 100만줄아래아한글 200만줄스마트폰 1000만줄윈도우 3000만줄 소프트웨어 : 다른분야가이루어놓은것을아직이루지못했슴 다른분야의현재수준 제대로작동할지를미리검증할수없는기계설계는없다. 제대로작동할지를미리검증할수없는회로설계는없다. 제대로작동할지를미리검증할수없는공장설계는없다. 제대로서있을지를미리검증할수없는건축설계는없다. 뉴튼방정식, 미적분방정식, 통계역학, 무슨무슨방정식... 무엇일까? 모든기술의질문 소프트웨어분야에서의이질문 우리가만든것이우리가의도한대로움직인다는것을어떻게미리확인할수있는가? 작성한 SW의오류를자동으로미리모두찾아주거나, 없으면없다고확인해주는기술들은있는가? ( 사실, 일상에서도잦은질문과답 : 입학시험, 입사시험, 궁합, 클럽 관리 ) 그래서, SW 의오류때문에발생하는 개인 / 기업 / 국가 / 사회적비용을 절감시켜주는기술들은있는가?

20 프로그램 검진: 타입오류를 넘어서 SW 오류의 예 SW 오류(bug) 어머니가 전해준 슈퍼마켓 심부름 목록(프로그램) 소프트웨어에 있는 오류 소프트웨어가 생각대로 실행되지 않는 것 1. 우유 1리터 2병 사람이 소프트웨어를 잘못 만들었기 때문 2. 우유가 없으면 오렌지쥬스 1리터 3병 천재지변이 아님 3. 우유가 있으면 식빵 500그람 1봉 4. 쌀과 자두 만약에: 우유 1리터 1병만 있으면? 쌀과 자두? 쌀과자 두? SW 오류의 문제 SW 오류: 사람이 손으로 손쉽게 잡을 수 없다 살다가 병이든다 사회적 비용 해결책 = 경제적기회 SW로 동작하는 제품이 고장난다 엄청나게 커지고 복잡해 진 소프트웨어 새로운 컴퓨팅 환경: 지구 = 컴퓨터 전지구적 네트웍을 타고 불특정 다수의 코드가 내게로 온다(스마트폰 게임/apps) 사회적 비용 자동 기술이 필요 해결책 = 경제적기회

21 SW 오류 검증 기술: 1세대 SW 오류 검증 기술: 2세대 타입 검증(type checking): 90년대에 완성. 문법 검증기: 70년대에 완성된 기술. lexical analyzer & (30년간 프로그래밍언어 분야의 대표 성과) parser 오류 = 생긴것은 멀쩡한데, 잘못된 값이 계산에 흘러드는 오류 = 소프트웨어의 생김새가 틀린 것 1. 우유 1리터 2병 경우 1. 우유를 담은 얼음을 가스 불위에 올려놓고 2. 우유가 없으면 오렌지ㅈㅅ 1리터 3병 데운다 3. 있으면 빵식 우유가 500그람 1봉 2. 식빵을 유리접시에 담고 방아로 빻는다 4. 쌀과 자두 3. 2의 접시에 1의 우유를 튀긴다 4. 남자와 소나무를 결혼시킨다 SW 오류 검증 기술: 3세대 데이터의 중력 프로그램분석검증: 아직 미완성 충분히 많아지는 데이터, 충분히 저렴해지는 컴퓨터 (static analysis, verification, model checking,...) 새로운 프로그래밍 중력 오류 = 생긴것도 멀쩡하고 타입도 맞지만, 바라는 바가 아 확률추론 프로그래밍probabilistic programming 닌것 앱덕abduction 하는 프로그램짜기 오류 = 필요한 조건을 만족시킬 수 없는 경우 프로그램 = 1. 우유를 담은 냄비를 가스 불위에 데운다 인과관계 A = B 관찰한 데이터 B 2. 식빵을 스텐접시에 담고 방아로 빻는다 실행결과 = 짐작하는 원인 A 3. 남자1명과 여자1명을 결혼 시킨다 일상 추측을 자동으로/과학적으로 가스불이 포항제철 용광로가 된다면? 시험점수에서 실력추측 방아가 현대중공업의 프레스가 된다면? 좋아하는 영화에서 성격추측, 등등 남녀 나이의 차가 100살이된다면? 주의: 완전하지 못한 인과관계 & 관찰못한 데이터

22 다음 년의축적 2 그도구의실현 3 소프트웨어, 지혜로짓는세계 4 응용 : 인간지능 / 본능 / 현실의확장

SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0

SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0 차례 SNU 046.016 컴퓨터과학이여는 세계 (Computational Civilization) Part 1 400 년의축적 2 그도구의실현 Prof. Kwangkeun Yi School of Computer Science & Engineering 3 SW, 그궁리의세계 4 응용 : 인간지능 / 본능 / 현실의확장 이전 1 400 년의축적 2 그도구의실현

More information

SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0

SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0 SNU 046.016 컴퓨터과학이여는 세계 (Computational Civilization) Part III Prof. Kwangkeun Yi School of Computer Science & Engineering 차례 1 400 년의축적 2 그도구의실현 3 SW, 그궁리의세계 4 응용 : 인간지능 / 본능 / 현실의확장 이전 1 400 년의축적 2 그도구의실현

More information

SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0

SNU =10100 =minusby by1000 ÄÄto0.03exÄÄto0.03exÄÄ=10100 =minusby by1000 Ç»to0.03exÇ»to0.03exÇ»=10100 =minusby by1000 ÅÍto0.0 차례 SNU 046.016 컴퓨터과학이여는 세계 (Computational Civilization) Part Prof. Kwangkeun Yi Department of Computer Science & Engineering 이전 다음 1 400년의 축적 2 그 도구의 실현 3 SW, 지혜로 짓는 세계 4 응용: 인간 지능/본능/현실의 확장 또다른 100여년의

More information

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 SNU 4190.210 프로그래밍 원리 (Principles of Programming) Part III Prof. Kwangkeun Yi 차례 1 값중심 vs 물건중심프로그래밍 (applicative vs imperative programming) 2 프로그램의이해 : 환경과메모리 (environment & memory) 다음 1 값중심 vs 물건중심프로그래밍

More information

HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M.

HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M. 오늘할것 5 6 HW5 Exercise 1 (60pts) M interpreter with a simple type system M. M. M.., M (simple type system). M, M. M., M. Review: 5-2 7 7 17 5 4 3 4 OR 0 2 1 2 ~20 ~40 ~60 ~80 ~100 M 언어 e ::= const constant

More information

완벽한개념정립 _ 행렬의참, 거짓 수학전문가 NAMU 선생 1. 행렬의참, 거짓개념정리 1. 교환법칙과관련한내용, 는항상성립하지만 는항상성립하지는않는다. < 참인명제 > (1),, (2) ( ) 인경우에는 가성립한다.,,, (3) 다음과같은관계식을만족하는두행렬 A,B에

완벽한개념정립 _ 행렬의참, 거짓 수학전문가 NAMU 선생 1. 행렬의참, 거짓개념정리 1. 교환법칙과관련한내용, 는항상성립하지만 는항상성립하지는않는다. < 참인명제 > (1),, (2) ( ) 인경우에는 가성립한다.,,, (3) 다음과같은관계식을만족하는두행렬 A,B에 1. 행렬의참, 거짓개념정리 1. 교환법칙과관련한내용, 는항상성립하지만 는항상성립하지는않는다. < 참인명제 > (1),, (2) ( ) 인경우에는 가성립한다.,,, (3) 다음과같은관계식을만족하는두행렬 A,B에대하여 AB=BA 1 가성립한다 2 3 (4) 이면 1 곱셈공식및변형공식성립 ± ± ( 복호동순 ), 2 지수법칙성립 (은자연수 ) < 거짓인명제 >

More information

윈도우즈프로그래밍(1)

윈도우즈프로그래밍(1) 제어문 (2) For~Next 문 윈도우즈프로그래밍 (1) ( 신흥대학교컴퓨터정보계열 ) 2/17 Contents 학습목표 프로그램에서주어진특정문장을부분을일정횟수만큼반복해서실행하는문장으로 For~Next 문등의구조를이해하고활용할수있다. 내용 For~Next 문 다중 For 문 3/17 제어문 - FOR 문 반복문 : 프로그램에서주어진특정문장들을일정한횟수만큼반복해서실행하는문장

More information

슬라이드 1

슬라이드 1 CHAP 2: 순환 (Recursion) 순환 (recursion) 이란? 알고리즘이나함수가수행도중에자기자신을다시호출하여문제를해결하는기법 정의자체가순환적으로 되어있는경우에적합한방법 순환 (recursion) 의예 팩토리얼값구하기 피보나치수열 1 n! n*( n 1)! fib( n) 0 1 fib( n 2) n n 0 ` 1 fib( n 1) if n 0 if

More information

<3235B0AD20BCF6BFADC0C720B1D8C7D120C2FC20B0C5C1FE20322E687770>

<3235B0AD20BCF6BFADC0C720B1D8C7D120C2FC20B0C5C1FE20322E687770> 25 강. 수열의극한참거짓 2 두수열 { }, {b n } 의극한에대한 < 보기 > 의설명중옳은것을모두고르면? Ⅰ. < b n 이고 lim = 이면 lim b n =이다. Ⅱ. 두수열 { }, {b n } 이수렴할때 < b n 이면 lim < lim b n 이다. Ⅲ. lim b n =0이면 lim =0또는 lim b n =0이다. Ⅰ 2Ⅱ 3Ⅲ 4Ⅰ,Ⅱ 5Ⅰ,Ⅲ

More information

Chapter ...

Chapter ... Chapter 4 프로세서 (4.9절, 4.12절, 4.13절) Contents 4.1 소개 4.2 논리 설계 기초 4.3 데이터패스 설계 4.4 단순한 구현 방법 4.5 파이프라이닝 개요*** 4.6 파이프라이닝 데이터패스 및 제어*** 4.7 데이터 해저드: 포워딩 vs. 스톨링*** 4.8 제어 해저드*** 4.9 예외 처리*** 4.10 명령어 수준

More information

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 SNU 4190.210 프로그래밍 원리 (Principles of Programming) Part IV Prof. Kwangkeun Yi 차례 1 안전하게프로그래밍하기 : 손수 vs 자동 2 맞는지확인하기쉽게프로그램하기 3 대형프로그래밍을위한기술 : 모듈프로그래밍 다음 1 안전하게프로그래밍하기 : 손수 vs 자동 2 맞는지확인하기쉽게프로그램하기 3 대형프로그래밍을위한기술

More information

Microsoft PowerPoint - Java7.pptx

Microsoft PowerPoint - Java7.pptx HPC & OT Lab. 1 HPC & OT Lab. 2 실습 7 주차 Jin-Ho, Jang M.S. Hanyang Univ. HPC&OT Lab. jinhoyo@nate.com HPC & OT Lab. 3 Component Structure 객체 (object) 생성개념을이해한다. 외부클래스에대한접근방법을이해한다. 접근제어자 (public & private)

More information

문제지 제시문 2 보이지 않는 영역에 대한 정보를 얻기 위하여 관측된 다른 정보를 분석하여 역으로 미 관측 영역 에 대한 정보를 얻을 수 있다. 가령 주어진 영역에 장애물이 있는 경우 한 끝 점에서 출발하여 다른 끝 점에 도달하는 최단 경로의 개수를 분석하여 장애물의

문제지 제시문 2 보이지 않는 영역에 대한 정보를 얻기 위하여 관측된 다른 정보를 분석하여 역으로 미 관측 영역 에 대한 정보를 얻을 수 있다. 가령 주어진 영역에 장애물이 있는 경우 한 끝 점에서 출발하여 다른 끝 점에 도달하는 최단 경로의 개수를 분석하여 장애물의 제시문 문제지 2015학년도 대학 신입학생 수시모집 일반전형 면접 및 구술고사 수학 제시문 1 하나의 동전을 던질 때, 앞면이나 뒷면이 나온다. 번째 던지기 전까지 뒷면이 나온 횟수를 라 하자( ). 처음 던지기 전 가진 점수를 점이라 하고, 번째 던졌을 때, 동전의 뒷면이 나오면 가지고 있던 점수를 그대로 두고, 동전의 앞면이 나오면 가지고 있던 점수를 배

More information

1 경영학을 위한 수학 Final Exam 2015/12/12(토) 13:00-15:00 풀이과정을 모두 명시하시오. 정리를 사용할 경우 명시하시오. 1. (각 6점) 다음 적분을 구하시오 Z 1 4 Z 1 (x + 1) dx (a) 1 (x 1)4 dx 1 Solut

1 경영학을 위한 수학 Final Exam 2015/12/12(토) 13:00-15:00 풀이과정을 모두 명시하시오. 정리를 사용할 경우 명시하시오. 1. (각 6점) 다음 적분을 구하시오 Z 1 4 Z 1 (x + 1) dx (a) 1 (x 1)4 dx 1 Solut 경영학을 위한 수학 Fial Eam 5//(토) :-5: 풀이과정을 모두 명시하시오. 정리를 사용할 경우 명시하시오.. (각 6점) 다음 적분을 구하시오 4 ( ) (a) ( )4 8 8 (b) d이 성립한다. d C C log log (c) 이다. 양변에 적분을 취하면 log C (d) 라 하자. 그러면 d 4이다. 9 9 4 / si (e) cos si

More information

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx #include int main(void) { int num; printf( Please enter an integer "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 을 작성하면서 C 프로그램의

More information

152*220

152*220 152*220 2011.2.16 5:53 PM ` 3 여는 글 교육주체들을 위한 교육 교양지 신경림 잠시 휴간했던 우리교육 을 비록 계간으로이지만 다시 내게 되었다는 소식을 들으니 우 선 반갑다. 하지만 월간으로 계속할 수 없다는 현실이 못내 아쉽다. 솔직히 나는 우리교 육 의 부지런한 독자는 못 되었다. 하지만 비록 어깨너머로 읽으면서도 이런 잡지는 우 리

More information

Microsoft Word - p_vs_np.doc

Microsoft Word - p_vs_np.doc 2007 학습용컨텐츠 Complexity Theory P vs NP http://talent.kaist.ac.kr http://gifted.kaist.ac.kr 여지우 jyeo@kaist.ac.kr 1 P vs NP 0. 서론 1. 알고리즘과복잡도 1.1. 알고리즘 1.2. 복잡도 2. P 와 NP 2.1. 결정형문제 2.2. 결정성 / 비결정성알고리즘 2.3.

More information

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 ±×to0.

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 ±×to0. 프로그래밍 원리 (Principles of Programming) Part IV Prof. Kwangkeun Yi 차례 1 안전하게프로그래밍하기 : 손수 vs 자동 2 맞는지확인하기쉽게프로그램하기 3 대형프로그래밍을위한기술 : 모듈프로그래밍 다음 1 안전하게프로그래밍하기 : 손수 vs 자동 2 맞는지확인하기쉽게프로그램하기 3 대형프로그래밍을위한기술 : 모듈프로그래밍

More information

Microsoft PowerPoint - chap05-제어문.pptx

Microsoft PowerPoint - chap05-제어문.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); 1 학습목표 제어문인,, 분기문에 대해 알아본다. 인 if와 switch의 사용 방법과 사용시 주의사항에 대해 알아본다.

More information

Microsoft PowerPoint - chap04-연산자.pptx

Microsoft PowerPoint - chap04-연산자.pptx int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); } 1 학습목표 수식의 개념과 연산자, 피연산자에 대해서 알아본다. C의 를 알아본다. 연산자의 우선 순위와 결합 방향에

More information

여행기

여행기 POPL/VMCAI 2013 ROME, ITALY 2013.01.20-2013.01.26 POPL 2013. 40 POPL VMCAI, PADL, PEPM... 1. POPL,. VMCAI(International Conference on Verification, Model Checking, and Abstract Interpretation), PADL(International

More information

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음

프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 CHAPTER 9 둘중하나선택하기 관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다. 관계연산자 연산자 의미 x == y x와 y가같은가? x!= y

More information

<C1DF29BCF6C7D020315FB1B3BBE7BFEB20C1F6B5B5BCAD2E706466>

<C1DF29BCF6C7D020315FB1B3BBE7BFEB20C1F6B5B5BCAD2E706466> 84 85 86 87 88 89 1 12 1 1 2 + + + 11=60 9 19 21 + + + 19 17 13 11=60 + 5 7 + 5 + 10 + 8 + 4+ 6 + 3=48 1 2 90 1 13 1 91 2 3 14 1 2 92 4 1 2 15 2 3 4 93 1 5 2 6 1 2 1 16 6 5 94 1 1 22 33 55 1 2 3 4 5 6

More information

Ch 1 머신러닝 개요.pptx

Ch 1 머신러닝 개요.pptx Chapter 1. < > :,, 2017. Slides Prepared by,, Biointelligence Laboratory School of Computer Science and Engineering Seoul National University 1.1 3 1.2... 7 1.3 10 1.4 16 1.5 35 2 1 1.1 n,, n n Artificial

More information

3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < >

3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < > . 변수의수 ( 數 ) 가 3 이라면카르노맵에서몇개의칸이요구되는가? 2칸 나 4칸 다 6칸 8칸 < > 2. 다음진리표의카르노맵을작성한것중옳은것은? < 나 > 다 나 입력출력 Y - 2 - 3. 다음은카르노맵의표이다. 논리식을간략화한것은? < 나 > 4. 다음카르노맵을간략화시킨결과는? < > 2 2 2 2 2 2 2-3 - 5. 다음진리표를간략히한결과

More information

FGB-P 학번수학과권혁준 2008 년 5 월 19 일 Lemma 1 p 를 C([0, 1]) 에속하는음수가되지않는함수라하자. 이때 y C 2 (0, 1) C([0, 1]) 가미분방정식 y (t) + p(t)y(t) = 0, t (0, 1), y(0)

FGB-P 학번수학과권혁준 2008 년 5 월 19 일 Lemma 1 p 를 C([0, 1]) 에속하는음수가되지않는함수라하자. 이때 y C 2 (0, 1) C([0, 1]) 가미분방정식 y (t) + p(t)y(t) = 0, t (0, 1), y(0) FGB-P8-3 8 학번수학과권혁준 8 년 5 월 9 일 Lemma p 를 C[, ] 에속하는음수가되지않는함수라하자. 이때 y C, C[, ] 가미분방정식 y t + ptyt, t,, y y 을만족하는해라고하면, y 는, 에서연속적인이계도함수를가지게확 장될수있다. Proof y 은 y 의도함수이므로미적분학의기본정리에의하여, y 은 y 의어떤원시 함수와적분상수의합으로표시될수있다.

More information

와플-4년-2호-본문-15.ps

와플-4년-2호-본문-15.ps 1 2 1+2 + = = 1 1 1 +2 =(1+2)+& + *=+ = + 8 2 + = = =1 6 6 6 6 6 2 2 1 1 1 + =(1+)+& + *=+ =+1 = 2 6 1 21 1 + = + = = 1 1 1 + 1-1 1 1 + 6 6 0 1 + 1 + = = + 7 7 2 1 2 1 + =(+ )+& + *= + = 2-1 2 +2 9 9 2

More information

4-Ç×°ø¿ìÁÖÀ̾߱â¨ç(30-39)

4-Ç×°ø¿ìÁÖÀ̾߱â¨ç(30-39) 항공우주 이야기 항공기에 숨어 있는 과학 및 비밀장치 항공기에는 비행 중에 발생하는 현상을 효율적으로 이용하기 위해 과 학이 스며들어 있다. 특별히 관심을 갖고 관찰하지 않으면 쉽게 발견할 수 없지만, 유심히 살펴보면 객실 창문에 아주 작은 구멍이 있고, 주 날 개를 보면 뒷전(trailing edge) 부분이 꺾어져 있다. 또 비행기 전체 형 상을 보면 수직꼬리날개가

More information

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다 이장에서사용되는 MATLAB 명령어들은비교적복잡하므로 MATLAB 창에서명령어를직접입력하지않고확장자가 m 인 text 파일을작성하여실행을한다. 즉, test.m 과같은 text 파일을만들어서 MATLAB 프로그램을작성한후실행을한다. 이와같이하면길고복잡한 MATLAB 프로그램을작성하여실행할수있고, 오류가발생하거나수정이필요한경우손쉽게수정하여실행할수있는장점이있으며,

More information

31. 을전개한식에서 의계수는? 를전개한식이 일 때, 의값은? 을전개했을때, 의계수와상수항의합을구하면? 을전개했을때, 의 계수는? 를전개했을때, 상수항을 구하여라. 37

31. 을전개한식에서 의계수는? 를전개한식이 일 때, 의값은? 을전개했을때, 의계수와상수항의합을구하면? 을전개했을때, 의 계수는? 를전개했을때, 상수항을 구하여라. 37 21. 다음식의값이유리수가되도록유리수 의값을 정하면? 1 4 2 5 3 26. 을전개하면상수항을 제외한각항의계수의총합이 이다. 이때, 의값은? 1 2 3 4 5 22. 일때, 의값은? 1 2 3 4 5 27. 를전개하여간단히 하였을때, 의계수는? 1 2 3 4 5 23. 를전개하여 간단히하였을때, 상수항은? 1 2 3 4 5 28. 두자연수 와 를 로나누면나머지가각각

More information

Homework 1 SNU , Fall 2012 Kwangkeun Yi Due: 9/14, 24:00 Exercise 1 리스트합 큰순서대로 (descending order) 나열된정수리스트두개를받아서하나의 순서리스트로만드는함수 merge: int lis

Homework 1 SNU , Fall 2012 Kwangkeun Yi Due: 9/14, 24:00 Exercise 1 리스트합 큰순서대로 (descending order) 나열된정수리스트두개를받아서하나의 순서리스트로만드는함수 merge: int lis Homework 1 SNU 4190.310, Fall 2012 Kwangkeun Yi Due: 9/14, 24:00 Exercise 1 리스트합 큰순서대로 (descending order) 나열된정수리스트두개를받아서하나의 순서리스트로만드는함수 merge: int list * int list -> int list 를정의하세요. 리스트에는같은정수가반복해서들어있지않습니다.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 06 반복문 01 반복문의필요성 02 for문 03 while문 04 do~while문 05 기타제어문 반복문의의미와필요성을이해한다. 대표적인반복문인 for 문, while 문, do~while 문의작성법을 알아본다. 1.1 반복문의필요성 반복문 동일한내용을반복하거나일정한규칙으로반복하는일을수행할때사용 프로그램을좀더간결하고실제적으로작성할수있음.

More information

제 3강 역함수의 미분과 로피탈의 정리

제 3강 역함수의 미분과 로피탈의 정리 제 3 강역함수의미분과로피탈의정리 역함수의미분 : 두실수 a b 와폐구갂 [ ab, ] 에서 -이고연속인함수 f 가 ( a, b) 미분가능하다고가정하자. 만일 f '( ) 0 이면역함수 f 은실수 f( ) 에서미분가능하고 ( f )'( f ( )) 이다. f '( ) 에서 증명 : 폐구갂 [ ab, ] 에서 -이고연속인함수 f 는증가함수이거나감소함수이다 (

More information

statistics

statistics 수치를이용한자료요약 statistics hmkang@hallym.ac.kr 한림대학교 통계학 강희모 ( 한림대학교 ) 수치를이용한자료요약 1 / 26 수치를 통한 자료의 요약 요약 방대한 자료를 몇 개의 의미있는 수치로 요약 자료의 분포상태를 알 수 있는 통계기법 사용 중심위치의 측도(measure of center) : 어떤 값을 중심으로 분포되어 있는지

More information

Infinity(∞) Strategy

Infinity(∞) Strategy 반복제어 표월성 passwd74@cherub.sungkyul.edu 개요 for() 문 break문과 continue문 while문 do-while문 for() 문 for() 문형식 for( 표현식1; 표현식2; 표현식3) 여러문장들 ; 표현식 1 : 초기화 (1 번만수행 ) 표현식 2 : 반복문수행조건 ( 없으면무한반복 ) 표현식 3 : 반복문수행횟수 for()

More information

체의원소를계수로가지는다항식환 Theorem 0.1. ( 나눗셈알고리듬 (Division Algorithm)) F 가체일때 F [x] 의두다항식 f(x) = a 0 + a 1 x + + a n x n, a n 0 F 와 g(x) = b 0 + b 1 x + + b m x

체의원소를계수로가지는다항식환 Theorem 0.1. ( 나눗셈알고리듬 (Division Algorithm)) F 가체일때 F [x] 의두다항식 f(x) = a 0 + a 1 x + + a n x n, a n 0 F 와 g(x) = b 0 + b 1 x + + b m x 체의원소를계수로가지는다항식환 Theorem 0.1. ( 나눗셈알고리듬 (Division Algorithm)) F 가체일때 F [x] 의두다항식 f(x) = a 0 + a 1 x + + a n x n, a n 0 F 와 g(x) = b 0 + b 1 x + + b m x m, b m 0 F, m > 0 에대해 f(x) = g(x)q(x) + r(x) 을만족하는

More information

쉽게배우는알고리즘 6장. 해시테이블 테이블 Hash Table

쉽게배우는알고리즘 6장. 해시테이블 테이블 Hash Table 쉽게배우는알고리즘 6장. 해시테이블 테이블 Hash Table http://academy.hanb.co.kr 6장. 해시테이블 테이블 Hash Table 사실을많이아는것보다는이론적틀이중요하고, 기억력보다는생각하는법이더중요하다. - 제임스왓슨 - 2 - 학습목표 해시테이블의발생동기를이해한다. 해시테이블의원리를이해한다. 해시함수설계원리를이해한다. 충돌해결방법들과이들의장단점을이해한다.

More information

2002년 2학기 자료구조

2002년 2학기 자료구조 자료구조 (Data Structures) Chapter 1 Basic Concepts Overview : Data (1) Data vs Information (2) Data Linear list( 선형리스트 ) - Sequential list : - Linked list : Nonlinear list( 비선형리스트 ) - Tree : - Graph : (3)

More information

Microsoft Word - PLC제어응용-2차시.doc

Microsoft Word - PLC제어응용-2차시.doc 과정명 PLC 제어응용차시명 2 차시. 접점명령 학습목표 1. 연산개시명령 (LOAD, LOAD NOT) 에대하여설명할수있다. 2. 직렬접속명령 (AND, AND NOT) 에대하여설명할수있다. 3. 병렬접속명령 (OR, OR NOT) 에대하여설명할수있다. 4.PLC의접점명령을가지고간단한프로그램을작성할수있다. 학습내용 1. 연산개시명령 1) 연산개시명령 (LOAD,

More information

SIGIL 완벽입문

SIGIL 완벽입문 누구나 만드는 전자책 SIGIL 을 이용해 전자책을 만들기 EPUB 전자책이 가지는 단점 EPUB이라는 포맷과 제일 많이 비교되는 포맷은 PDF라는 포맷 입니다. EPUB이 나오기 전까지 전 세계에서 가장 많이 사용되던 전자책 포맷이고, 아직도 많이 사 용되기 때문이기도 한며, 또한 PDF는 종이책 출력을 위해서도 사용되기 때문에 종이책 VS

More information

Chap 6: Graphs

Chap 6: Graphs 5. 작업네트워크 (Activity Networks) 작업 (Activity) 부분프로젝트 (divide and conquer) 각각의작업들이완료되어야전체프로젝트가성공적으로완료 두가지종류의네트워크 Activity on Vertex (AOV) Networks Activity on Edge (AOE) Networks 6 장. 그래프 (Page 1) 5.1 AOV

More information

Microsoft PowerPoint Predicates and Quantifiers.ppt

Microsoft PowerPoint Predicates and Quantifiers.ppt 이산수학 () 1.3 술어와한정기호 (Predicates and Quantifiers) 2006 년봄학기 문양세강원대학교컴퓨터과학과 술어 (Predicate), 명제함수 (Propositional Function) x is greater than 3. 변수 (variable) = x 술어 (predicate) = P 명제함수 (propositional function)

More information

041~084 ¹®È�Çö»óÀбâ

041~084 ¹®È�Çö»óÀбâ 1998 60 1 1 200 2 6 4 7 29 1975 30 2 78 35 1 4 2001 2009 79 2 9 2 200 3 1 6 1 600 13 6 2 8 21 6 7 1 9 1 7 4 1 2 2 80 4 300 2 200 8 22 200 2140 2 195 3 1 2 1 2 52 3 7 400 60 81 80 80 12 34 4 4 7 12 80 50

More information

chap x: G입력

chap x: G입력 재귀알고리즘 (Recursive Algorithms) 재귀알고리즘의특징 문제자체가재귀적일경우적합 ( 예 : 피보나치수열 ) 이해하기가용이하나, 비효율적일수있음 재귀알고리즘을작성하는방법 재귀호출을종료하는경계조건을설정 각단계마다경계조건에접근하도록알고리즘의재귀호출 재귀알고리즘의두가지예 이진검색 순열 (Permutations) 1 장. 기본개념 (Page 19) 이진검색의재귀알고리즘

More information

04 Çмú_±â¼ú±â»ç

04 Çмú_±â¼ú±â»ç 42 s p x f p (x) f (x) VOL. 46 NO. 12 2013. 12 43 p j (x) r j n c f max f min v max, j j c j (x) j f (x) v j (x) f (x) v(x) f d (x) f (x) f (x) v(x) v(x) r f 44 r f X(x) Y (x) (x, y) (x, y) f (x, y) VOL.

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 누구나즐기는 C 언어콘서트 제 1 장프로그래밍소개 이번장에서학습할내용 프로그램의이해 프로그래밍언어 알고리즘 프로그램개발과정 프로그램을작성하기에앞서서중요한개념들을살펴봅니다.. 컴퓨터란? Q) 컴퓨터 (computer) 는무엇인가? A) 컴퓨터는기본적으로계산 (compute) 하는기계 Q) 컴퓨터를이용하여데이터를처리하려면반드시데이터가숫자형태이어야한다. 왜? A)

More information

Drucker Innovation_CEO과정

Drucker Innovation_CEO과정 ! 피터드러커의 혁신과 기업가정신 허연 경희대학교 경영대학원 Doing Better Problem Solving Doing Different Opportunity ! Drucker, Management Challenges for the 21st Century, 1999! Drucker, Management: Tasks, Responsibilities,

More information

(001~006)개념RPM3-2(부속)

(001~006)개념RPM3-2(부속) www.imth.tv - (~9)개념RPM-(본문).. : PM RPM - 대푯값 페이지 다민 PI LPI 알피엠 대푯값과산포도 유형 ⑴ 대푯값 자료 전체의 중심적인 경향이나 특징을 하나의 수로 나타낸 값 ⑵ 평균 (평균)= Ⅰ 통계 (변량)의 총합 (변량의 개수) 개념플러스 대푯값에는 평균, 중앙값, 최 빈값 등이 있다. ⑶ 중앙값 자료를 작은 값부터 크기순으로

More information

Java ...

Java ... 컴퓨터언어 1 Java 제어문 조성일 조건문 : if, switch 어떠한조건을조사하여각기다른명령을실행 if 문, switch 문 if 문 if - else 문형식 if 문형식 if ( 조건식 ) { 명령문 1; 명령문 2;... if ( 조건식 ) { 명령문 1; 명령문 2;... else { 명령문 a; 명령문 b;... 예제 1 정수를입력받아짝수와홀수를판별하는프로그램을작성하시오.

More information

ThisJava ..

ThisJava .. 자바언어에정확한타입을추가한 ThisJava 소개 나현익, 류석영 프로그래밍언어연구실 KAIST 2014 년 1 월 14 일 나현익, 류석영 자바언어에정확한타입을추가한 ThisJava 소개 1/29 APLAS 2013 나현익, 류석영 자바 언어에 정확한 타입을 추가한 ThisJava 소개 2/29 실제로부딪힌문제 자바스크립트프로그램분석을위한요약도메인 나현익,

More information

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770> 연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.

More information

중간고사

중간고사 중간고사 예제 1 사용자로부터받은두개의숫자 x, y 중에서큰수를찾는알고리즘을의사코드로작성하시오. Step 1: Input x, y Step 2: if (x > y) then MAX

More information

OCW_C언어 기초

OCW_C언어 기초 초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향

More information

새로운 지점에서 단이 시작하는 경우 기둥코로 시작하라고 표시합니다. 기둥코(standing stitch)로 시작하는 방법은 YouTube 에서 찾아볼 수 있습니다. 특수 용어 팝콘뜨기: 1 코에 한길긴뜨기 5 코, 바늘을 빼고 첫번째 한길긴뜨기코의 앞에서 바늘을 넣은

새로운 지점에서 단이 시작하는 경우 기둥코로 시작하라고 표시합니다. 기둥코(standing stitch)로 시작하는 방법은 YouTube 에서 찾아볼 수 있습니다. 특수 용어 팝콘뜨기: 1 코에 한길긴뜨기 5 코, 바늘을 빼고 첫번째 한길긴뜨기코의 앞에서 바늘을 넣은 Desire Copyright: Helen Shrimpton, 2016. All rights reserved. By: Helen at www.crystalsandcrochet.com 12 인치 모티브 worsted/aran(10ply), 5mm 바늘 사용 약 10인치 Double Knitting(8ply), 4mm 바늘 사용 미국식 용어를 사용합니다. 약어

More information

Microsoft PowerPoint - chap01-C언어개요.pptx

Microsoft PowerPoint - chap01-C언어개요.pptx #include int main(void) { int num; printf( Please enter an integer: "); scanf("%d", &num); if ( num < 0 ) printf("is negative.\n"); printf("num = %d\n", num); return 0; } 1 학습목표 프로그래밍의 기본 개념을

More information

2015년9월도서관웹용

2015년9월도서관웹용 www.nl.go.kr 국립중앙도서관 후회의 문장들 사라져 버릴 마음의 잔해 지난해와 마찬가지로 이번 해에도 배추농사에서 큰돈을 남은 평생 머릿속에서 맴돌게 될 그 말을 다시 떠올려보 만졌다 하더라도 지난 여름 어느 날 갑자기 들기 시작한 았다. 맺지 못한 채 끝나버린 에이드리언의 문장도 함께. 그 생각만은 변함없을 것 같았다. 같은 나이의 다른 아이 그래서

More information

문제여섯사람이일곱개의발판위에있다. 빈발판을중심으로세사람은왼쪽에서가운데를보고서있고, 다른세사람은오른쪽에서가운데를보고서있다. Figure: 양창모 ( 청주교육대학교컴퓨터교육과 ) Problems and Algorithms 2015 년여름 1 / 35 목표왼쪽에서있던세사람을오른쪽으로, 오른쪽에서있던사람을왼쪽으로이동한다. 가운데발판은여전히비어있어야한다. 최소의움직임으로목표를달성하도록한다.

More information

CS322 중간고사.docx

CS322 중간고사.docx Midterm Fall 2014 2014 년 10 월 10 월 21 일화요일오후 1:00 2:30 전산학동 E3-1 1501 호 ( 제 1 공동강의실 ) Prof. Choe, Kwang-Moo : : Grading Result: Problem Total 1 /10 /10 2 /10 /10 /10 /30 3 /5 /10 /15 4 /10 /15 /15 /40

More information

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770>

<342EBAAFBCF620B9D720B9D9C0CEB5F92E687770> 예약어(reserved word) : 프로그래밍 언어에서 특별한 용도로 사용하고자 미리 지정한 단어 - 프로그램의 구성요소를 구별하게 해주는 역할 => 라벨, 서브 프로그램 이름, 변수에 연관되어 다른 변수나 서브 프로그램 등과 구별 - 식별자의 최대길이는 언어마다 각각 다르며 허용길이를 넘어서면 나머지 문자열은 무시됨 - FORTRAN, COBOL, HTML

More information

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 ±×to0.

SNU =10100 =minusby by1000 ÇÁto0.03exÇÁto0.03exÇÁ=10100 =minusby by1000 ·Îto0.03ex·Îto0.03ex·Î=10100 =minusby by1000 ±×to0. 차례 SNU 4190.210 프로그래밍원리 (Principles of Programming) Part II Prof. Kwangkeun Yi 다음 데이타구현하기 (data implementation) 새로운타입의데이타 / 값구현하기 기억하는가 : 타입들 (types) τ ::= ι primitive type τ τ pair(product) type τ + τ

More information

<C1A4C3A5C0CC3538C8A32E687770>

<C1A4C3A5C0CC3538C8A32E687770> ISSN 2288-4815 절실히 묻고 가까이 실천하는 선진 산림과학 3.0 시대를 열겠습니다! 산림정책이슈 제58호 2015. 11. 15. 바이오마커 현황과 산림치유분야에서의 활용방안 박수진 정미애 이정희 NATIONAL INSTITUTE OF FOREST SCIENCE 임업인에게는 희망을, 국민에게는 행복을 01 03 10 14 KFRI 1 바이오마커의

More information

Sequences with Low Correlation

Sequences with Low Correlation 레일리페이딩채널에서의 DPC 부호의성능분석 * 김준성, * 신민호, * 송홍엽 00 년 7 월 1 일 * 연세대학교전기전자공학과부호및정보이론연구실 발표순서 서론 복호화방법 R-BP 알고리즘 UMP-BP 알고리즘 Normalied-BP 알고리즘 무상관레일리페이딩채널에서의표준화인수 모의실험결과및고찰 결론 Codig ad Iformatio Theory ab /15

More information

IP 심화 라우팅프로토콜적용시 라우팅테이블에서 이니셜이있는네트워크를설정하는것 : onnected 직접연결된네트워크를의미한다. 그러므로라우팅은 나는이런네트워크와연결되어있다. 를직접연결된라우터들에게알려주는것 1>en 1#conf t 1(config)#router rip 1

IP 심화 라우팅프로토콜적용시 라우팅테이블에서 이니셜이있는네트워크를설정하는것 : onnected 직접연결된네트워크를의미한다. 그러므로라우팅은 나는이런네트워크와연결되어있다. 를직접연결된라우터들에게알려주는것 1>en 1#conf t 1(config)#router rip 1 IP 심화 º 각 P 의게이트웨이는해당네트워크의마지막주소를사용한다. - P1 (210.220.10.1/26) 의게이트웨이 (5의 Fa0/0) : 210.220.10.63 /26 = 255.255.255.192 호스트비트수 : 32-26 = 6 비트 => = 64 그러므로 P1의 IP 210.220.10.1 중서브넷마스크에의거 26비트는변함이없고, 나머지 6비트가호스트비트로변하므로

More information

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다 10 강. 쉘스크립트 쉘스크립트 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다른운영체제로이식되지않음 -스크립트언어를사용하면컴파일과정이없고인터프리터가소스파일에서명령문을판독하여각각의명령을수행

More information

금오공대 컴퓨터공학전공 강의자료

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 13. 포인터와배열! 함께이해하기 2013.10.02. 오병우 컴퓨터공학과 13-1 포인터와배열의관계 Programming in C, 정재은저, 사이텍미디어. 9 장참조 ( 교재의 13-1 은읽지말것 ) 배열이름의정체 배열이름은 Compile 시의 Symbol 로서첫번째요소의주소값을나타낸다. Symbol 로서컴파일시에만유효함 실행시에는메모리에잡히지않음

More information

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과 학습내용 1. Java Development Kit(JDK) 2. Java API 3. 자바프로그래밍개발도구 (Eclipse) 4. 자바프로그래밍기초 2 자바를사용하려면무엇이필요한가? 자바프로그래밍개발도구 JDK (Java Development Kit) 다운로드위치 : http://www.oracle.com/technetwork/java/javas

More information

3.2 함수의정의 Theorem 6 함수 f : X Y 와 Y W 인집합 W 에대하여 f : X W 는함수이다. Proof. f : X Y 가함수이므로 f X Y 이고, Y W 이므로 f X W 이므로 F0이만족된다. 함수의정의 F1, F2은 f : X Y 가함수이므로

3.2 함수의정의 Theorem 6 함수 f : X Y 와 Y W 인집합 W 에대하여 f : X W 는함수이다. Proof. f : X Y 가함수이므로 f X Y 이고, Y W 이므로 f X W 이므로 F0이만족된다. 함수의정의 F1, F2은 f : X Y 가함수이므로 3.2 함수의정의 Theorem 6 함수 f : X Y 와 Y W 인집합 W 에대하여 f : X W 는함수이다. Proof. f : X Y 가함수이므로 f X Y 이고, Y W 이므로 f X W 이므로 F0이만족된다. 함수의정의 F1, F2은 f : X Y 가함수이므로성립한다. Theorem 7 두함수 f : X Y 와 g : X Y 에대하여, f = g f(x)

More information

Microsoft PowerPoint - chap06-1Array.ppt

Microsoft PowerPoint - chap06-1Array.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 SMV 소개 Konkuk Univ. IT 융합정보보호학과 오예원, 박선영 목차 SMV 소개 CTL NuSMV 설치방법및예시 (lift) 향후계획 SMV SMV(Symbolic Model Verifier) 는유한상태시스템 (finite state system) 이 CTL(Computation Tree Logic) 이라는논리와 BDD(Binary Decision

More information

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout << " 양수입력 : "; cin >> *p; if (*p <= 0) cout << " 양수를입력해야합니다 " << endl; return; 동적할

1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout <<  양수입력 : ; cin >> *p; if (*p <= 0) cout <<  양수를입력해야합니다  << endl; return; 동적할 15 장기타주제들 auto_ptr 변환함수 cast 연산자에의한명시적형변환실행시간타입정보알아내기 (RTTI) C++ 프로그래밍입문 1. auto_ptr 다음프로그램의문제점은무엇인가? void func(void) int *p = new int; cout > *p; if (*p

More information

BOX 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 01 02 01 02 03 04 01 02 03 04 03 04 05 06 07 08 09

BOX 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 01 02 01 02 03 04 01 02 03 04 03 04 05 06 07 08 09 정답 및 풀이 1. 경제생활과 바람직한 선택 02`쪽 2. 사회 변화와 우리 생활 11`쪽 3. 지역 사회의 발전 20`쪽 1. 경제생활과 바람직한 선택 28`쪽 2. 사회 변화와 우리 생활 35쪽 3. 지역 사회의 발전 42쪽 BOX 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 01 02 01

More information

Exercise (10pts) k-친수 일반적으로 k진수(k > 1)는 다음과 같이 표현한다. d0 dn 여기서 di {0,, k 1}. 그리고 d0 dn 은 크기가 d0 k dn k n 인 정수를 표현한다. 이것을 살짝 확장해서 k친수 를 다음과 같이 정의

Exercise (10pts) k-친수 일반적으로 k진수(k > 1)는 다음과 같이 표현한다. d0 dn 여기서 di {0,, k 1}. 그리고 d0 dn 은 크기가 d0 k dn k n 인 정수를 표현한다. 이것을 살짝 확장해서 k친수 를 다음과 같이 정의 Homework SNU 4190.310, Fall 017 Kwangkeun Yi due: 9/8, 4:00 Exercise 1 (10pts) 참거짓 Propositional Logic 식들 (formula) 을다음과같이정의했습니다 : type formula = TRUE FALSE NOT of formula ANDALSO of formula * formula

More information

MVVM 패턴의 이해

MVVM 패턴의 이해 Seo Hero 요약 joshua227.tistory. 2014 년 5 월 13 일 이문서는 WPF 어플리케이션개발에필요한 MVVM 패턴에대한내용을담고있다. 1. Model-View-ViewModel 1.1 기본개념 MVVM 모델은 MVC(Model-View-Contorl) 패턴에서출발했다. MVC 패턴은전체 project 를 model, view 로나누어

More information

1 SW 2015. 02 26

1 SW 2015. 02 26 02 1 SW 2015. 02 26 2-1 SW 2015. 02 27 SW 2015. 02 2-1 28 SW 2015. 02 29 2 SW 2015. 02 2-2 30 2-2 SW 2015. 02 31 SW 2015. 02 32 2-3 SW 2015. 02 33 3 SW 2015. 02 2-3 34 2-4 SW 2015. 02 35 4 SW 2015. 02

More information

SW 2015. 02 5-1 89

SW 2015. 02 5-1 89 SW 2015. 02 88 SW 2015. 02 5-1 89 SW 2015. 02 5-2 5-3 90 SW 2015. 02 5-4 91 SW 2015. 02 5-5 5-6 92 5-7 SW 2015. 02 93 SW 2015. 02 5-8 5-1 94 SW 2015. 02 5-9 95 SW 2015. 02 5-10 5-2 96 SW 2015. 02 5-11

More information

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D> Power Java 제 6 장선택과반복 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break문 continue문 지금까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 3 가지의제어구조 조건문 문장이실행되는순서에영향을주는문장 조건에따라서여러개의실행경로가운데하나를선택

More information

C 언어 프로그래밊 과제 풀이

C 언어 프로그래밊 과제 풀이 과제풀이 (1) 홀수 / 짝수판정 (1) /* 20094123 홍길동 20100324 */ /* even_or_odd.c */ /* 정수를입력받아홀수인지짝수인지판정하는프로그램 */ int number; printf(" 정수를입력하시오 => "); scanf("%d", &number); 확인 주석문 가필요한이유 printf 와 scanf 쌍

More information

public key private key Encryption Algorithm Decryption Algorithm 1

public key private key Encryption Algorithm Decryption Algorithm 1 public key private key Encryption Algorithm Decryption Algorithm 1 One-Way Function ( ) A function which is easy to compute in one direction, but difficult to invert - given x, y = f(x) is easy - given

More information

JVM 메모리구조

JVM 메모리구조 조명이정도면괜찮조! 주제 JVM 메모리구조 설미라자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조장. 최지성자료조사, 자료작성, PPT 작성, 보고서작성. 발표. 조원 이용열자료조사, 자료작성, PPT 작성, 보고서작성. 이윤경 자료조사, 자료작성, PPT작성, 보고서작성. 이수은 자료조사, 자료작성, PPT작성, 보고서작성. 발표일 2013. 05.

More information

암호이론과 보안 고전적 암호시스템

암호이론과 보안                               고전적 암호시스템 6장 : 공개키 암호시스템 정보보호이론 Fall 2014 Mid-Term 10월 21일 2014. 19:00 pm ~ 21:00 pm 10월 14일 수업내용까지 Need to fully understand various concepts on cryptographic primitives. Write down all your works to obtain full

More information

DE1-SoC Board

DE1-SoC Board 실습 1 개발환경 DE1-SoC Board Design Tools - Installation Download & Install Quartus Prime Lite Edition http://www.altera.com/ Quartus Prime (includes Nios II EDS) Nios II Embedded Design Suite (EDS) is automatically

More information

Observational Determinism for Concurrent Program Security

Observational Determinism for  Concurrent Program Security 웹응용프로그램보안취약성 분석기구현 소프트웨어무결점센터 Workshop 2010. 8. 25 한국항공대학교, 안준선 1 소개 관련연구 Outline Input Validation Vulnerability 연구내용 Abstract Domain for Input Validation Implementation of Vulnerability Analyzer 기존연구

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Lecture 02 프로그램구조및문법 Kwang-Man Ko kkmam@sangji.ac.kr, compiler.sangji.ac.kr Department of Computer Engineering Sang Ji University 2018 자바프로그램기본구조 Hello 프로그램구조 sec01/hello.java 2/40 자바프로그램기본구조 Hello 프로그램구조

More information

鍮뚮┰硫붾돱??李⑤낯

鍮뚮┰硫붾돱??李⑤낯 5 1 2 3 4 5 6 7 8 9 1 2 3 6 7 1 2 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 30 31 32 33 34 36 37 38 39 40 41 42 43 44 45 OK 46 47 OK 48 OK 49 50 51 OK OK 52 53 54 55 56 57 58 59 60 61

More information

¹ÙÀÌ¿À´Ï¾È½º03

¹ÙÀÌ¿À´Ï¾È½º03 http://biosys.kaist.ac.kr NO. 03 2008 KAIST Department of Bio and Brain Engineering Newsletter Contents 02 04 06 10 12 13 20 22 23 Bio and Brain Engineering 2 _Department of Bio and Brain Engineering Newsletter

More information

PowerPoint Presentation

PowerPoint Presentation Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section

More information

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

Microsoft PowerPoint 자바-기본문법(Ch2).pptx 자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March

More information

02장.배열과 클래스

02장.배열과 클래스 ---------------- DATA STRUCTURES USING C ---------------- CHAPTER 배열과구조체 1/20 많은자료의처리? 배열 (array), 구조체 (struct) 성적처리프로그램에서 45 명의성적을저장하는방법 주소록프로그램에서친구들의다양한정보 ( 이름, 전화번호, 주소, 이메일등 ) 를통합하여저장하는방법 홍길동 이름 :

More information

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2

비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 비트연산자 1 1 비트와바이트 비트와바이트 비트 (Bit) : 2진수값하나 (0 또는 1) 를저장할수있는최소메모리공간 1비트 2비트 3비트... n비트 2^1 = 2개 2^2 = 4개 2^3 = 8개... 2^n 개 1 바이트는 8 비트 2 2 진수법! 2, 10, 16, 8! 2 : 0~1 ( )! 10 : 0~9 ( )! 16 : 0~9, 9 a, b,

More information

유니티 변수-함수.key

유니티 변수-함수.key C# 1 or 16 (Binary or Hex) 1:1 C# C# (Java, Python, Go ) (0101010 ). (Variable) : (Value) (Variable) : (Value) ( ) (Variable) : (Value) ( ) ; (Variable) : (Value) ( ) ; = ; (Variable) : (Value) (Variable)

More information

Web Scraper in 30 Minutes 강철

Web Scraper in 30 Minutes 강철 Web Scraper in 30 Minutes 강철 발표자 소개 KAIST 전산학과 2015년부터 G사에서 일합니다. 에서 대한민국 정치의 모든 것을 개발하고 있습니다. 목표 웹 스크래퍼를 프레임웍 없이 처음부터 작성해 본다. 목표 웹 스크래퍼를 프레임웍 없이 처음부터 작성해 본다. 스크래퍼/크롤러의 작동 원리를 이해한다. 목표

More information

물의 증기압과 증발 엔탈피 실험 일자 : 2016년 1월 11일 (월) 공동실험자 : 이주찬, 이주찬 제 출 자 : 이주찬 실험 개요 I 실험 목적 온도에 따른 물의 증기압을 실험으로 측정한다. 측정 결과를 이용하여 물의 증발

물의 증기압과 증발 엔탈피 실험 일자 : 2016년 1월 11일 (월) 공동실험자 : 이주찬, 이주찬 제 출 자 : 이주찬 실험 개요 I 실험 목적 온도에 따른 물의 증기압을 실험으로 측정한다. 측정 결과를 이용하여 물의 증발 물의 증기압과 증발 엔탈피 실험 일자 : 2016년 1월 11일 (월) 공동실험자 : 14088 이주찬, 14088 이주찬 제 출 자 : 14088 이주찬 실험 개요 I. 1.1. 실험 목적 온도에 따른 물의 증기압을 실험으로 측정한다. 측정 결과를 이용하여 물의 증발 엔탈피를 구한다. 1.2. 이론적 배경 증기압 증기가 고체 또는 액체와 동적 평형 상태에

More information