MATLAB for C/C++ Programmers

Size: px
Start display at page:

Download "MATLAB for C/C++ Programmers"

Transcription

1 행렬다루기 : 심화편 김탁은 kmste2@kaist.ac.kr 2

2 서브행렬로부터행렬만들기 각행렬들을서브 (sub) 행렬로하여새로운행렬 M 생성 r s p q >> B = [1 2; 3 4] B = >> C = [ B zeros(2); ones(2) eye(2) ] C =

3 빈행렬 (Empty Matrix) Empty Matrix 의정의 0 x 0, m x 0 x n, 등어느한 dimension 이라도 0 인것 아래와같이행이나열에 [] 을대입하면해당행또는열이제거됨 >> Z = [] Z = [] >> M = magic(3) M = >> M(2, :) = [] M =

4 행렬에서행 / 열의합, 평균 sum(m) : 행방향으로원소들의합계산 sum(m,2) : 열방향으로원소들의합계산 mean(m) : 행방향으로원소들의평균계산 mean(m,2) : 열방향으로원소들의평균계산 5

5 행렬에서행 / 열의최대및최소 min(m) : 행방향으로원소들의최소값계산 min(m,[],2) : 열방향으로원소들의최소값계산 최소값이위치한인덱스? >> [V, I] = min(m) V = I = 최소값 열에서최소값의위치 6

6 행렬에서행 / 열의분산, 표준편차 var(m) : 행방향으로원소들의분산계산 var(m,[],2) : 열방향으로원소들의분산계산 std(m) : 행방향으로원소들의표준편차계산 std(m,[],2) : 열방향으로원소들의표준편차계산 7

7 Quiz (5min) 문제 4) 어은초등학교 6 학년 1 반의성적이다음과같다고할때, 이를행렬로나타내고, 여러가지값들을구해봅시다. 국어 수학 과학 체육 영희 철수 민수 ) 각과목별평균, 분산, 최고점, 최저점 2) 각학생별총점및평균 3) 각학생별최고점받은과목점수 4) 반전체점수합계및평균 8

8 Quiz Sol. (5min) 문제 4) 어은초등학교 6 학년 1 반의성적이다음과같다고할때, 이를행렬로나타내고, 여러가지값들을구해봅시다. >> S = [ ; ; ] 국어 수학 과학 체육 영희 철수 민수 S = % 각과목별평균, 분산, 최고점, 최저점 >> mean(s), var(s), max(s), min(s) % 각학생별총점및평균 >> sum(s ), mean(s ) % 각학생별최고점받은과목점수 >> max(s ) % 반전체점수합계및평균 >> sum(sum(s)), mean(mean(s)) 9

9 행렬의차원변경 reshape 함수 m x n 행렬 p x q 행렬로변경 변환하려는행렬과변환하고자하는행렬의원소수는동일해야함 ( 즉, m*n == p*q) reshape( m x n 행렬, p, q) >> M = randi( 10, 3, 5) M = >> reshape(m, 5, 3)

10 Quiz 11

11 Quiz Sol. >> v = 1:27 v = Columns 1 through Columns 12 through Columns 23 through >> reshape(v, 9, 3)'

12 행렬 Reshaping >> M = randi( 10, 3, 5) M = >> M % 프라임 >> transpose(m) 13

13 행렬 Reshaping z = a+bi conj(z) = a-bi >> M = randi(10,2,3) + i*randi(10,2,3) M = i i i i i i >> ctranspose(m) i i i i i i >> M % 프라임 14

14 행렬 Reshaping transpose 와 ctranspose 차이 각원소가실수인행렬 M 에대해, transpose(m) 과 ctranspose(m) 은동일 각원소가복소수인행렬 M 에대해, transpose(m) 과 ctranspose(m) 은서로다름 >> M = magic(2) M = >> transpose(m) >> ctranspose(m) >> M = magic(2)+magic(2)*i M = i i i i >> transpose(m) i i i i >> ctranspose(m) i i i i 15

15 행렬 Reshaping rot90( M ) 행렬 M 을반시계방향으로 90 도회전함 >> M = [1 2 3; 4 5 6] M = >> rot90(m)

16 행렬 Reshaping fliplr (flip left-right) 행렬 M 을좌우로회전시킴 flipud (flip up-down) 행렬 M 을상하로회전시킴 >> M = magic(3) M = >> fliplr(m) >> M = magic(3) M = >> flipud(m)

17 행렬 Reshaping flipdim( M, dim ) 행렬 M 을 dim 방향으로회전 flipdim(m, 2) 행렬 M 을좌우로회전시킴 >> M = magic(3) M = >> fliplr(m) flipdim(m, 1) 행렬 M 을상하로회전시킴 >> M = magic(3) M = >> flipud(m)

18 행렬 Reshaping circshift( M, shiftsize ) 행렬 M 의행또는열을 shiftsize 만큼 shift circshift(m, 1) >> M = magic(3) M = >> circshift(m, 1) circshift(m, -1) >> M = magic(3) M = >> circshift(m, -1) circshift(m, [1-1]) >> M = magic(3) M = >> circshift(m, [1-1])

19 행렬복제 repmat 함수 B = repmat( m x n 행렬, p, q) m x n 행렬을열방향으로 p 개, 행방향으로 q 개복제하여 mp x nq 행렬을생성 >> M = [1 2 3; 4 5 6] M = >> repmat( M, 1, 2 ) >> v = [1 3 4]; v = >> repmat(v, 3, 2)

20 Quiz 21

21 Quiz Sol. >> M = [1 3; 5 6; 2 3; 8 9] M = >> Q = [5 2] Q = 5 2 >> rq = repmat(q, 4, 1) rq = >> (rq-m).^ >> sqrt(sum((rq-m).^2, 2))

22 대각행렬 행렬의대각원소를제외한나머지가 0 인행렬 diag(x): 대각원소가 x 의원소들로이루어지는대각행렬 diag(x, k): x 를 k 번째대각위치에넣음 k = 0 주대각선 k > 0 주대각선윗부분 k < 0 주대각선아랫부분 >> diag( [1 2], 1 ) >> diag( [1 2 3] ) >> diag( [3 4], -2 )

23 삼각행렬 Upper triangular matrix triu(a) : 주대각선및그윗부분의원소들만을취함 triu(a, k) : A 의 k 번째대각선및그윗부분의원소들만을취함 >> A = magic(3) >> triu(a) >> triu(a, 1) A = Lower triangular matrix tril(a) : 주대각선및그아랫부분의원소들만을취함 tril(a, k) : A 의 k 번째주대각선및그아랫부분의원소들만을취함 >> A = magic(3) A = >> tril(a) >> tril(a, 1)

24 행과열재배치 (reordering) 주어진행렬에서행또는열의위치를변경하고자할때 Col 1 Col 3, Col 2 Col 4 이므로, [ ] [ ] >> M = randi(10, 4, 5) M = >> M( :, [ ])

25 특정조건만족하는행렬원소 행렬 논리연산자 조건 으로특정조건만족하는행렬원소선택 >> M <= >> find(m<=1) 선택된원소의값을수정하려면 >> M(M <= 1) = -10 >> M(find(M<=1)) =

26 Sparse Matrix 원소들의대부분이 0 인행렬 full matrix full(m) sparse(m) sparse matrix (1, 3) = 3 (1, 7) = 6 (2, 8) = 5 (3, 5) = 2 27

27 Sparse Matrix Sparse Matrix 에서연산 Full matrix 에서의연산방법을그대로적용가능 >> M = zeros(4,6); >> M([1 5 7]) = [5 9 6] M = >> S = sparse(m) S = (1,1) 5 (1,2) 9 (3,2) 6 >> F = S * S' F = (1,1) 106 (3,1) 54 (1,3) 54 (3,3) 36 >> full(f)

28 Sparse Matrix Sparse Matrix vs Full Matrix 두행렬이차지하는메모리크기를비교 >> M = zeros(100,100); >> M([ ]) = [ ]; >> S = sparse(m); >> S = sparse(m) S = (1,1) 5 (5,1) 9 (10,1) 13 (23,1) 2 >> whos Name Size Bytes Class Attributes M 100x double S 100x double sparse 29

29 다차원배열 (Multidimensional Array) 2 개이상의차원을가질수있는배열 n 차원배열은 n-1 차원배열을아래그림과같이쌓아놓은것으로생각할수있음 기존 2 차원행렬에이용했던방법을다차원배열에서도그대로이용 3 차원배열의예 (1,1, 3) (2,1, 3) (1, 2, 3) (2, 2, 3) (1,3, 3) (2,3, 3) 1 st index : row index 2 nd index : column index 3 rd index: page index column (1,1, 2) (2,1, 2) (3,1, 2) (1, 2, 2) (2, 2, 2) (3, 2, 2) (3,1, 3) (1,3, (4,1, 3) 2) (2,3, 2) (3,3, 2) (3, 2, 3) (4, 2, 3) (3,3, 3) (4,3, 3) row (1,1,1) (2,1,1) (3,1,1) (1, 2,1) (2, 2,1) (3, 2,1) (1,3,1) (4,1, 2) (2,3,1) (3,3,1) (4, 2, 2) (4,3, 2) page (4,1,1) (4, 2,1) (4,3,1) 30

30 다차원배열의의미 m x n 픽셀크기를가지는컬러이미지는 RGB 또는 CYK 값으로표현됨 즉, 이미지는 m x n x 3 의행렬로구성된다고볼수있음 n m RGB or CYK 31

31 다차원배열의의미 MRI image 여러장의 slice 이미지가다차원배열에저장되어있다고볼수있음 32

32 다차원배열의생성 방법 1. 2차원배열을먼저생성한뒤, 2차원배열을한차원씩확장하여생성 예를들어, 3 x 3 x 2 인 3 차원배열을만드는방법 >> A(:, :, 2) = [1 0 4; 3 5 6; 9 8 7] >> A = magic(3) A = A(:,:,1) = A(:,:,2) = page 2 page 33

33 다차원배열의생성 방법 2. 모든 2 차원배열을먼저생성한뒤, cat 함수를이용하여 생성한배열들을합침 예를들어, 3 x 3 x 2 인 3 차원배열을만드는방법 >> A = magic(3) A = >> B = [1 0 4; 3 5 6; 9 8 7] B = >> C = cat(3, A, B) C(:,:,1) = C(:,:,2) = page 2 page 34

34 배열의차원을알아보는함수 N = ndims(a) 다차원배열 A 의차원의개수를알려줌 [m, n, p, q, ] = size(a) 각차원의크기를알려줌 실습 ) 앞서만든 3 차원배열 A 에대해 ndims(a), size(a) 를각각 실행해봅시다. 35

35 Quiz 아래두 3 x 3 x 2 배열을각각생성해보자. 생성한두 3 차원배열로부터 3 x 3 x 2 x 2 인 4 차원배열을생성해보자. 36

36 Quiz Sol. 아래두 3 x 3 x 2 배열을각각생성해보자. >> M1 = [5 7 8; 0 1 9; 4 3 6] M1 = >> M1(:,:,2) = [1 0 4; 3 5 6; 9 8 7] M1(:,:,1) = M1(:,:,2) =

37 Quiz Sol. 아래두 3 x 3 x 2 배열을각각생성해보자. >> M2 = [1 0 3; 4-1 2; 8 2 1] M2 = >> M2(:,:,2) = [6 8 3; 4 3 6; 5 9 2] M2(:,:,1) = M2(:,:,2) =

38 Quiz Sol. 생성한두 3 차원배열로부터 3 x 3 x 2 x 2 인 4 차원배열을생성해보자. >> M1(:,:,:,2) = M2 M1(:,:,1,1) = M1(:,:,2,1) = M1(:,:,1,2) = M1(:,:,2,2) =

39 다차원배열에서합, 평균 sum(m) : 첫번째차원방향원소들의합계산 sum(m, 2) : 두번째차원방향으로원소들의합계산 sum(m, 3) : 세번째차원방향으로원소들의합계산 40

40 다차원배열에서특정영역의값가져오기 >> P1 = [5 7 8; 0 1 9; 4 3 6]; >> P2 = [1 0 4; 3 5 6; 9 8 7]; >> M = cat(3, P1, P2); >> M(2:end, 2:end, 1) >> M(2:3, 2:3, :) ans(:,:,1) = ans(:,:,2) =

41 다차원배열에서특정영역의값가져오기 >> M(1, :, :) ans(:,:,1) = ans(:,:,2) = >> M(:,3,:) ans(:,:,1) = ans(:,:,2) =

42 Singleton Dimension 제거 Singleton Dimension? 배열 A 가있을때, 크기가 1 인차원 예 ) 16 x 16 x 1 x 27 세번째차원이 singleton dimension B = squeeze(a) 배열 A 에서싱글톤차원을제거 배열 A 와동일한개수의원소를가진배열 B 를리턴 >> Y = rand(2,1,3) >> mat=repmat(1,[1,1,5]) Y(:,:,1) = Y(:,:,2) = Y(:,:,3) = >> Z = squeeze(y) Z = mat(:,:,1) = 1 mat(:,:,2) = 1 mat(:,:,3) = 1 mat(:,:,4) = 1 mat(:,:,5) = 1 >> squeeze(mat)

43 MRI 영상분석의예 >> load mri >> D = squeeze(d); >> size(d) 단층영상을열 (column) 으로잘라서이미지를 재구성하면, 측면영상이나옴 >> I = D(:, 64, :); >> size(i) >> I = squeeze(i); >> size(i) >> imshow(i, map) >> I2 = imresize(i, [128, 54]); >> imshow(i2, map) 44

44 Quiz A 백화점체인의매장별항목별분기별매출액 ( 단위 : 백만원 ) 은다음과같다. 아래데이터를 3 x 2 x 4 배열로표현하고, 다음을계산해보자. 1) 각매장의각항목별 1년총매출액과분기별평균매출액 2) 각매장의 1년매출액 3) 2분기, 4분기의서울매장정보만가져오기 1 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속

45 Quiz Sol. A 백화점체인의매장별항목별분기별매출액 ( 단위 : 백만원 ) 은다음과같다. 아래데이터를 3 x 2 x 4 배열로표현하고, 다음을계산해보자. 1) 각매장의각항목별 1년총매출액과분기별평균매출액 2) 각매장의 1년매출액 3) 2분기, 4분기의서울매장정보만가져오기 1분기 2분기 서울매장 대전매장 서울매장 대전매장 여성의류 여성의류 가전 가전 귀금속 귀금속 분기 4분기 서울매장 대전매장 서울매장 대전매장 여성의류 여성의류 가전 가전 귀금속 귀금속 >> Q1 = [200 80; ; ] Q1 = >> Q2 = [ ; ; ] Q2 = >> Q3 = [ ; ; ] Q3 = >> Q4 = [340 90; ; ] Q4 =

46 Quiz Sol. A 백화점체인의매장별항목별분기별매출액 ( 단위 : 백만원 ) 은다음과같다. 아래데이터를 3 x 2 x 4 배열로표현하고, 다음을계산해보자. 1) 각매장의각항목별 1년총매출액과분기별평균매출액 2) 각매장의 1년매출액 3) 2분기, 4분기의서울매장정보만가져오기 1분기 2분기 서울매장 대전매장 서울매장 대전매장 여성의류 여성의류 가전 가전 귀금속 귀금속 >> M = cat(3, Q1, Q2, Q3, Q4) M(:,:,1) = M(:,:,2) = M(:,:,3) = 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속 M(:,:,4) =

47 % 문제 1 번 Solution Quiz Sol. A 백화점체인의매장별항목별분기별매출액 ( 단위 : 백만원 ) 은다음과같다. 아래데이터를 3 x 2 x 4 배열로표현하고, 다음을계산해보자. 1) 각매장의각항목별 1년총매출액과분기별평균매출액 2) 각매장의 1년매출액 3) 2분기, 4분기의서울매장정보만가져오기 >> sum(m, 3) >> mean(m, 3) % 문제 2 번 Solution >> sum( sum(m, 3) ) 1 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속 분기 서울매장 대전매장 여성의류 가전 귀금속 % 문제 3 번 Solution >> M(:, 1, [2 4]) ans(:,:,1) = ans(:,:,2) = % squeeze >> Y = M(:, 1, [2 4]); >> squeeze(y)

48 다차원배열생성함수 ones, zeros, rand, randn >> ones(3, 3, 2) >> zeros(3,3,2) >> rand(3,3,2) >> randn(3,3,2) ans(:,:,1) = ans(:,:,1) = ans(:,:,1) = ans(:,:,1) = ans(:,:,2) = ans(:,:,2) = ans(:,:,2) = ans(:,:,2) =

49 MATLAB Data Types 50

50 MATLAB Data Types 51

51 Numeric Data Types default numeric data type 은 double Data Type Size (bytes) Min Max int int int uint uint uint single e e+38 double e e+308 데이터타입확인은 >> class(a) 데이터타입별 min/max 값은정수의경우 intmin() / intmax(), 실수의경우 realmin() / realmax() 52

52 Numeric Data Type 간변환 변환하고자하는데이터타입의이름을함수처럼사용하여, 행렬을매개변수로주면됨 >> A = rand(5,3); >> sa = single(a) >> ui8 = uint8(a) >> ui16 = uint16(sa) >> double(ui16) >> 주의할점 데이터범위가더넓은데이터타입에서데이터범위가좁은데이터타입으로변환시, 데이터손실이있을수있음. eg) A = uint32(257) 와 B = int8(a) 는서로다른값 53

53 Numeric Data Type 변환하는이유? 1. 매우큰배열을만들때, 메모리를절약하기위해 2. 크기가큰여러배열들간의연산시, 계산속도를빨리하기위해 >> clear all; clc; % double 타입의 1000 x 1000 행렬생성 >> da = rand(1000,1000); >> class(da) double % 두배열이차지하는메모리공간확인 >> whos Name Size Bytes Class Attributes da 1000x double sa 1000x single % double 타입행렬을 single 타입으로변환 >> sa = single(da); >> class(sa) single 54

54 문자열 문자열은작은따옴표로나타냄 >> x = hello world x = hello world 두문자열의합성 문자열은 1 x n 배열로취급됨 따라서두문자열의합성은두 1 x n 배열의합성방법과동일 대부분의경우두문자열의길이가서로다르므로, [x; y] 와같이문자열을합성하려고 하면에러가남 >> x = hello >> y = world >> z = [x y] z = hello world 55

55 문자열 문자열의길이 >> length(z) 11 문자열배열생성방법 I 각문자의길이가동일하도록 spacebar 로맞춰준다. >> A = [ apple ; orange ] Error using vertcat Dimensions of matrices being concatenated are not consistent. >> A = ['apple '; 'orange'] A = apple orange 56

56 문자열 문자열배열생성방법 II >> a = 'apple'; >> b = 'orange'; >> c = 'bananas'; >> abc = char(a,b,c) abc = apple orange bananas 문자열배열에서각문자열접근방법 >> abc( 1, : ) apple >> abc( 2, : ) orange >> abc( 3, : ) bananas 57

57 Cell 데이터타입 숫자 10 과문자 Hello World 를동시에한배열에저장할수있을까? >> [10 'Hello World'] Hello World 실패!! 의도와전혀다른예상치못한결과 Cell array 는서로다른타입의데이터들을한곳에저장가능 >> A{1,1} = 10 A = [10] >> A{1,2} = 'hello world' A = [10] 'hello world' 올바른결과 58

58 Cell 데이터타입 Cell() 함수이용하여 Cell 데이터생성 >> A = cell(1,2) A = [] [] >> A{1,1} = 10 A = [10] [] 1 x 2 크기의 cell 배열생성 배열원소접근방법과동일 [] 이아니라 {} 임을주의 >> A{1,2} = 'hello world' A = [10] 'hello world' Cell 데이터시각화 각셀에어떠한타입의데이터가있는지보여줌 >> cellplot(a, legend ) 59

59 Cell 데이터타입 Cell 안에 Cell 넣기 >> C = { [1 2], hello ; world, [3, 4] } C = [1x2 double] 'hello' 'world' [1x2 double] >> D = {C, 'kaist'; 'academy', 2014} D = {2x2 cell} 'kaist' 'academy' [2014] >> cellplot(d, legend ) Cell 안에 Cell 의원소접근하기 % hello 원소에접근하기 >> D{1,1}{1,2} % [1 2] 배열의원소접근하기 >> D{1,1}{1,1}(1) 60

60 Cell 에문자열저장하기 문자열저장하기 >> C = cell(1,3) C = [] [] [] >> C{1} = 'Seoul' C = 'Seoul' [] [] >> C{2} = 'Daejeon' C = 'Seoul' 'Daejeon' [] 문자열가져오기 >> >> C{1} Seoul >> C{2} Daejeon >> C{3} Busan >> C{3} = 'Busan' C = 'Seoul' 'Daejeon' 'Busan >> cellplot(c) 61

61 Quiz 문제 7) 다음과같은원소들로구성된 2 x 2 Cell 배열을만들어봅시다. 62

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

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조

학습목차 2.1 다차원배열이란 차원배열의주소와값의참조 - Part2- 제 2 장다차원배열이란무엇인가 학습목차 2.1 다차원배열이란 2. 2 2 차원배열의주소와값의참조 2.1 다차원배열이란 2.1 다차원배열이란 (1/14) 다차원배열 : 2 차원이상의배열을의미 1 차원배열과다차원배열의비교 1 차원배열 int array [12] 행 2 차원배열 int array [4][3] 행 열 3 차원배열 int array [2][2][3]

More information

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A

예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = B = >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = >> tf = (A==B) % A 예제 1.1 ( 관계연산자 ) >> A=1:9, B=9-A A = 1 2 3 4 5 6 7 8 9 B = 8 7 6 5 4 3 2 1 0 >> tf = A>4 % 4 보다큰 A 의원소들을찾을경우 tf = 0 0 0 0 1 1 1 1 1 >> tf = (A==B) % A 의원소와 B 의원소가똑같은경우를찾을때 tf = 0 0 0 0 0 0 0 0 0 >> tf

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 5 강. 배열, 포인터, 참조목차 배열 포인터 C++ 메모리구조 주소연산자 포인터 포인터연산 배열과포인터 메모리동적할당 문자열 참조 1 /20 5 강. 배열, 포인터, 참조배열 배열 같은타입의변수여러개를하나의변수명으로처리 int Ary[10]; 총 10 개의변수 : Ary[0]~Ary[9]

More information

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자

More information

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 (   ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각 JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.

More information

설계란 무엇인가?

설계란 무엇인가? 금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 6 강. 함수와배열, 포인터, 참조목차 함수와포인터 주소값의매개변수전달 주소의반환 함수와배열 배열의매개변수전달 함수와참조 참조에의한매개변수전달 참조의반환 프로그래밍연습 1 /15 6 강. 함수와배열, 포인터, 참조함수와포인터 C++ 매개변수전달방법 값에의한전달 : 변수값,

More information

MATLAB for C/C++ Programmers

MATLAB for C/C++ Programmers MATLAB 시작하기 김탁은 kmste2@kaist.ac.kr 1 시작하기에앞서 강의시간 1월 20일 ~ 1월 29 ( 월 ~ 금 ) 14:00 ~ 18:00 ( 총 30시간 ) 50분강의, 10분휴식 강의교재 쉽게배우는 MATLAB 입문과활용 (2 판 ) 임종수의 MATLAB 7 연락처 강사김탁은 ( kmste2@kaist.ac.kr ) 조교김도형 ( ehgud5@kaist.ac.kr

More information

예제 1.1 ( 행벡터만들기 ) >> a=[1 2 3 4 5] % a 는 1 에서 5 까지 a = 1 2 3 4 5 >> b=1:2:9 % b 는 1 에서 2 씩증가시켜 9 까지 b = 1 3 5 7 9 >> c=[b a] c = 1 3 5 7 9 1 2 3 4 5 >> d=[1 0 1 b(3) a(1:2:5)] d = 1 0 1 5 1 3 5 예제 1.2

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

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver. 2.0 jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 이중포인터란무엇인가? 포인터배열 함수포인터 다차원배열과포인터 void 포인터 포인터는다양한용도로유용하게활용될수있습니다. 2 이중포인터

More information

목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2

목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2 제 7 장. 배열 목차 배열의개요 배열사용하기 다차원배열 배열을이용한문자열다루기 실무응용예제 C 2 배열의개요 배열 (array) 의정의 같은데이터형을가지는여러개의변수를하나의배열명으로공유 기억공간을순차적으로할당받아사용하는것 [ 7.1] C 3 배열의개요 배열 (array) 의필요성 같은데이터형의여러개의변수간결하게선언 기억공간을순차적으로변수의값들을저장, 관리

More information

JAVA PROGRAMMING 실습 02. 표준 입출력

JAVA PROGRAMMING 실습 02. 표준 입출력 # 메소드의구조자주반복하여사용하는내용에대해특정이름으로정의한묶음 반환형메소드이름 ( 매개변수 ) { 실행문장 1; : 실행문장 N; } 메소드의종류 Call By Name : 메서드의이름에의해호출되는메서드로특정매개변수없이실행 Call By Value : 메서드를이름으로호출할때특정매개변수를전달하여그값을기초로실행하는메서드 Call By Reference : 메서드호출시매개변수로사용되는값이특정위치를참조하는

More information

R R ...

R R ... R과 데이터분석 R 데이터 양창모 청주교육대학교 컴퓨터교육과 2015년 겨울 R에서 지원하는 데이터 타입 I R에서는 일반적인 프로그래밍 언어에서 흔히 사용되는 정수, 부동소수, 문자열이 기본적으로 지원된다. I 그외에도 자료처리에 적합한 자료구조인 벡터vector, 행렬matrix, 데이터 프레임data frame, 리스트list 등이 있다. R에서 지원하는

More information

PowerPoint Presentation

PowerPoint Presentation 자바프로그래밍 1 배열 손시운 ssw5176@kangwon.ac.kr 배열이필요한이유 예를들어서학생이 10 명이있고성적의평균을계산한다고가정하자. 학생 이 10 명이므로 10 개의변수가필요하다. int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; 하지만만약학생이 100 명이라면어떻게해야하는가? int s0, s1, s2, s3, s4,

More information

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

금오공대 컴퓨터공학전공 강의자료 C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include

More information

02장.배열과 클래스

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

More information

11장 포인터

11장 포인터 누구나즐기는 C 언어콘서트 제 9 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다. 첫번째바이트의주소는 0, 두번째바이트는 1, 변수와메모리

More information

chap 5: Trees

chap 5: Trees 5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경

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

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

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

More information

Microsoft PowerPoint - 기계공학실험1-1MATLAB_개요2D.pptx

Microsoft PowerPoint - 기계공학실험1-1MATLAB_개요2D.pptx 1. MATLAB 개요와 활용 기계공학실험 I 2013년 2학기 MATLAB 시작하기 이장의내용 MATLAB의여러창(window)들의 특성과 목적 기술 스칼라의 산술연산 및 기본 수학함수의 사용. 스칼라 변수들(할당 연산자)의 정의 및 변수들의 사용 방법 스크립트(script) 파일에 대한 소개와 간단한 MATLAB 프로그램의 작성, 저장 및 실행 MATLAB의특징

More information

Vector Differential: 벡터 미분 Yonghee Lee October 17, 벡터미분의 표기 스칼라미분 벡터미분(Vector diffrential) 또는 행렬미분(Matrix differential)은 벡터와 행렬의 미분식에 대 한 표

Vector Differential: 벡터 미분 Yonghee Lee October 17, 벡터미분의 표기 스칼라미분 벡터미분(Vector diffrential) 또는 행렬미분(Matrix differential)은 벡터와 행렬의 미분식에 대 한 표 Vector Differential: 벡터 미분 Yonhee Lee October 7, 08 벡터미분의 표기 스칼라미분 벡터미분(Vector diffrential) 또는 행렬미분(Matrix differential)은 벡터와 행렬의 미분식에 대 한 표기법을 정의하는 방법이다 보통 스칼라(scalar)에 대한 미분은 일분수 함수 f : < < 또는 다변수 함수(function

More information

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Chapter 10 포인터 01 포인터의기본 02 인자전달방법 03 포인터와배열 04 포인터와문자열 변수의주소를저장하는포인터에대해알아본다. 함수의인자를값과주소로전달하는방법을알아본다. 포인터와배열의관계를알아본다. 포인터와문자열의관계를알아본다. 1.1 포인터선언 포인터선언방법 자료형 * 변수명 ; int * ptr; * 연산자가하나이면 1 차원포인터 1 차원포인터는일반변수의주소를값으로가짐

More information

Columns 8 through while expression {commands} 예제 1.2 (While 반복문의이용 ) >> num=0

Columns 8 through while expression {commands} 예제 1.2 (While 반복문의이용 ) >> num=0 for loop array {commands} 예제 1.1 (For 반복변수의이용 ) >> data=[3 9 45 6; 7 16-1 5] data = 3 9 45 6 7 16-1 5 >> for n=data x=n(1)-n(2) -4-7 46 1 >> for n=1:10 x(n)=sin(n*pi/10); n=10; >> x Columns 1 through 7

More information

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2 제 8 장. 포인터 목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2 포인터의개요 포인터란? 주소를변수로다루기위한주소변수 메모리의기억공간을변수로써사용하는것 포인터변수란데이터변수가저장되는주소의값을 변수로취급하기위한변수 C 3 포인터의개요 포인터변수및초기화 * 변수데이터의데이터형과같은데이터형을포인터 변수의데이터형으로선언 일반변수와포인터변수를구별하기위해

More information

슬라이드 1

슬라이드 1 UNIT 6 배열 로봇 SW 교육원 3 기 학습목표 2 배열을사용핛수있다. 배열 3 배열 (Array) 이란? 같은타입 ( 자료형 ) 의여러변수를하나의묶음으로다루는것을배열이라고함 같은타입의많은양의데이터를다룰때효과적임 // 학생 30 명의점수를저장하기위해.. int student_score1; int student_score2; int student_score3;...

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

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp

5장. JSP와 Servlet 프로그래밍을 위한 기본 문법(완성-0421).hwp 1 0 1.7 6 5 'A ' '/ u 4 4 2 2 ' " JS P 프로그래밍 " A ', 'b ', ' 한 ', 9, \ u d 6 5 4 ' c h a r a = 'A '; 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 1 0 1 1 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 < % @ p a g e c o n te n

More information

Microsoft PowerPoint - lect08

Microsoft PowerPoint - lect08 이번시간에알아야할것 강의 8. 복소수 (Complex Number), 문자열, 배열 복소수표현법 문자열함수 다차원배열 실습문제 DoeHoon Lee, Ph.D dohoon@pnu.edu Visual Computing & Biomedical Computing Lab(VisBiC) Sh School of Computer Science & Engineering i

More information

예제 1.1 ( 경기값과공정한경기 ) >> A = [5 3 9; 8 10 11; 6 2 8], P = [0 1 0], Q = [1 0 0]' % 3x3 행렬경기 A = 5 3 9 8 10 11 6 2 8 P = 0 1 0 Q = 1 0 0 >> E = P * A * Q % 경기자 R은항상 2행을선택하고 C는항상 1열을선택하면, % R은 $8을얻는것이보장되고

More information

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint 웹 연동 기술.pptx 웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 URL 분석 (1/2) URL (Uniform Resource Locator) 프로토콜, 호스트, 포트, 경로, 비밀번호, User 등의정보를포함 예. http://kim:3759@www.hostname.com:80/doc/index.html URL 을속성별로분리하고자할경우

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

Microsoft PowerPoint - lect08.ppt [호환 모드]

Microsoft PowerPoint - lect08.ppt [호환 모드] 이번시간에알아야할것 강의 8. 복소수 (Complex Number), 문자열, 배열 DoeHoon Lee, Ph.D dohoon@pnu.edu 복소수표현법문자열함수다차원배열실습문제 Visual Computing & Biomedical Computing Lab(VisBiC) School of Computer Science & Engineering Pusan National

More information

PowerPoint Presentation

PowerPoint Presentation 객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean

More information

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft PowerPoint - chap06-2pointer.ppt 2010-1 학기프로그래밍입문 (1) chapter 06-2 참고자료 포인터 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 포인터의정의와사용 변수를선언하는것은메모리에기억공간을할당하는것이며할당된이후에는변수명으로그기억공간을사용한다. 할당된기억공간을사용하는방법에는변수명외에메모리의실제주소값을사용하는것이다.

More information

adfasdfasfdasfasfadf

adfasdfasfdasfasfadf C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.

More information

Microsoft PowerPoint - C++ 5 .pptx

Microsoft PowerPoint - C++ 5 .pptx C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성

More information

Microsoft PowerPoint - chap11-포인터의활용.pptx

Microsoft PowerPoint - chap11-포인터의활용.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

chap x: G입력

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

More information

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt 변수와상수 1 변수란무엇인가? 변수 : 정보 (data) 를저장하는컴퓨터내의특정위치 ( 임시저장공간 ) 메모리, register 메모리주소 101 번지 102 번지 변수의크기에따라 주로 byte 단위 메모리 2 기본적인변수형및변수의크기 변수의크기 해당컴퓨터에서는항상일정 컴퓨터마다다를수있음 short

More information

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning

A Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning C Programming Practice (II) Contents 배열 문자와문자열 구조체 포인터와메모리관리 구조체 2/17 배열 (Array) (1/2) 배열 동일한자료형을가지고있으며같은이름으로참조되는변수들의집합 배열의크기는반드시상수이어야한다. type var_name[size]; 예 ) int myarray[5] 배열의원소는원소의번호를 0 부터시작하는색인을사용

More information

4장. 순차자료구조

4장. 순차자료구조 순차자료구조방식 자바로배우는쉬운자료구조 이장에서다룰내용 1 선형리스트 2 선형리스트의구현 3 다항식의순차자료구조표현 4 행렬의순차자료구조표현 2 선형리스트 (1) 리스트 (List) 자료를나열한목록 ( 집합 ) 리스트의예 3 선형리스트 (2) 선형리스트 (Linear List) 순서리스트 (Ordered List) 자료들간에순서를갖는리스트 선형리스트의예 4

More information

Data Structure

Data Structure Function & Pointer C- 언어의활용을위한주요기법 (3) Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr 함수의인자전달 함수의인자전달 함수의인자전달방식 인자전달의기본방식은복사다. 함수호출시전달되는값을매개변수를통해서전달받는데, 이때에값의복사가일어난다. int main(void) int val = 10;

More information

Microsoft PowerPoint - MDA 2008Fall Ch2 Matrix.pptx

Microsoft PowerPoint - MDA 2008Fall Ch2 Matrix.pptx Mti Matrix 정의 A collection of numbers arranged into a fixed number of rows and columns 측정변수 (p) 개체 x x... x 차수 (nxp) 인행렬matrix (n) p 원소 {x ij } x x... x p X = 열벡터column vector 행벡터row vector xn xn... xnp

More information

Microsoft PowerPoint - 제11장 포인터(강의)

Microsoft PowerPoint - 제11장 포인터(강의) 쉽게풀어쓴 C 언어 Express 제 11 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 1003 1004 1005 영화관 1002 1006 1001 포인터 (pointer) 1007 메모리의구조

More information

statistics

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

More information

Microsoft PowerPoint - 제3장-배열.pptx

Microsoft PowerPoint - 제3장-배열.pptx 제 3 강. 배열 (Array) 자료구조 1 제 3 강. 배열자료구조 학습목차 1. 배열의개념 2. 구조체 3. 희소 (Sparce) 행렬 4. 다차원배열의저장 2 1. 배열의개념 리스트는일상생활에서가장많이쓰이는자료형태이다. 예 ) 학생의명단, 은행거래고객명단, 월별판매액등 배열 (Array) 은컴퓨터언어에서리스트를저장하는데이터타입이다. 리스트와배열은같은개념이지만다른차원의용어이다.

More information

PowerPoint Presentation

PowerPoint Presentation MATLAB 기초사용법 2.2. MATLAB 의작업환경 Help 현재 directory Workspace 2.2. MATLAB 의작업환경 2.2.2 MATLAB 의작업폴더 >> cd >> dir * Path: MATLAB 프로그램이파일을찾는경로 2.2. MATLAB 의작업환경 2.2.4. MATLAB 의작업방법 1) MATLAB 에서실행되는파일인 m 파일을만들어실행하는방법

More information

Microsoft PowerPoint - chap10-함수의활용.pptx

Microsoft PowerPoint - chap10-함수의활용.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

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Function) 1. 함수의개념 입력에대해적절한출력을발생시켜주는것 내가 ( 프로그래머 ) 작성한명령문을연산, 처리, 실행해주는부분 ( 모듈 ) 자체적으로실행되지않으며,

More information

1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문

1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문 1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문 1. 표준입출력 표준입출력 입력 : 키보드, scanf 함수 출력 : 모니터, printf 함수문제 : 정수값 2개를입력받고두값사이의값들을더하여출력하라. #include int main(void) int Num1, Num2; int

More information

Vector Space Vector space : 모든 n 차원컬럼벡터의집합 : {, :, } (, 2), (2, 5), (-2.4, 3), (2.7, -3.77), (,), 이차원공간을모두채움 : {,, :,, } (2,3,4), (3,2,-5), Vector spa

Vector Space Vector space : 모든 n 차원컬럼벡터의집합 : {, :, } (, 2), (2, 5), (-2.4, 3), (2.7, -3.77), (,), 이차원공간을모두채움 : {,, :,, } (2,3,4), (3,2,-5), Vector spa Seoul National University Vector Space & Subspace Date Name: 김종권 Vector Space Vector space : 모든 n 차원컬럼벡터의집합 : {, :, } (, 2), (2, 5), (-2.4, 3), (2.7, -3.77), (,), 이차원공간을모두채움 : {,, :,, } (2,3,4), (3,2,-5),

More information

Chapter 4. LISTS

Chapter 4. LISTS 연결리스트의응용 류관희 충북대학교 1 체인연산 체인을역순으로만드는 (inverting) 연산 3 개의포인터를적절히이용하여제자리 (in place) 에서문제를해결 typedef struct listnode *listpointer; typedef struct listnode { char data; listpointer link; ; 2 체인연산 체인을역순으로만드는

More information

Microsoft PowerPoint - 제11장 포인터

Microsoft PowerPoint - 제11장 포인터 쉽게풀어쓴 C 언어 Express 제 11 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 1003 1004 1005 영화관 1002 1006 1001 포인터 (pointer) 1007 메모리의구조

More information

KNK_C_05_Pointers_Arrays_structures_summary_v02

KNK_C_05_Pointers_Arrays_structures_summary_v02 Pointers and Arrays Structures adopted from KNK C Programming : A Modern Approach 요약 2 Pointers and Arrays 3 배열의주소 #include int main(){ int c[] = {1, 2, 3, 4}; printf("c\t%p\n", c); printf("&c\t%p\n",

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 Programming Languages 모듈과펑터 2016 년봄학기 손시운 (ssw5176@kangwon.ac.kr) 담당교수 : 임현승교수님 모듈 (module) 관련있는정의 ( 변수또는함수 ) 를하나로묶은패키지 예약어 module과 struct end를사용하여정의 아래는모듈의예시 ( 우선순위큐, priority queue) # module PrioQueue

More information

제 11 장포인터 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

제 11 장포인터 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 제 11 장포인터 유준범 (JUNBEOM YOO) Ver. 2.0 jbyoo@konkuk.ac.kr http://dslab.konkuk.ac.kr 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다. 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습합니다.

More information

Microsoft PowerPoint - chap-11.pptx

Microsoft PowerPoint - chap-11.pptx 쉽게풀어쓴 C 언어 Express 제 11 장포인터 컴퓨터프로그래밍기초 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 컴퓨터프로그래밍기초 2 포인터란? 포인터 (pointer): 주소를가지고있는변수 컴퓨터프로그래밍기초 3 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다.

More information

강의 개요

강의 개요 DDL TABLE 을만들자 웹데이터베이스 TABLE 자료가저장되는공간 문자자료의경우 DB 생성시지정한 Character Set 대로저장 Table 생성시 Table 의구조를결정짓는열속성지정 열 (Clumn, Attribute) 은이름과자료형을갖는다. 자료형 : http://dev.mysql.cm/dc/refman/5.1/en/data-types.html TABLE

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

17장 클래스와 메소드

17장 클래스와 메소드 17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는

More information

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

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

More information

Microsoft PowerPoint - 7장 배열 pptx

Microsoft PowerPoint - 7장 배열 pptx C 프로그래밍및실습 7. 배열 세종대학교 목차 1) 배열이란? 2) 배열초기화 3) 배열응용 4) 실수배열과문자배열 5) 다차원배열 2 1) 배열이란? 변수를여러개만들어야하는상황을생각해보자. 사용자로부터 5개의정수를입력받아변수에저장하고, 이값을출력하는프로그램은다음과같이작성할수있다. 하지만, 정수가 100개라면? 배열을사용하여해결 int x0, x1, x2,

More information

PowerPoint Template

PowerPoint Template 10 포인터 1 주소 Address( 주소 ) 메모리에는그메모리의저장장소의위치를나타내는주소값 주소 (address) 는 1 바이트마다 1 씩증가하도록메모리에는연속적인번호가구성 2 주소연산자 & & 변수 변수의주소값을알아내려면변수앞에주소연산자 & (ampersand) 를이용 주소값이용장단점 주소값을이용하면보다편리하고융통성있는프로그램이가능 그러나복잡하고어려운단점

More information

Tcl의 문법

Tcl의 문법 월, 01/28/2008-20:50 admin 은 상당히 단순하고, 커맨드의 인자를 스페이스(공백)로 단락을 짓고 나열하는 정도입니다. command arg1 arg2 arg3... 한행에 여러개의 커맨드를 나열할때는, 세미콜론( ; )으로 구분을 짓습니다. command arg1 arg2 arg3... ; command arg1 arg2 arg3... 한행이

More information

Chap 6: Graphs

Chap 6: Graphs 그래프표현법 인접행렬 (Adjacency Matrix) 인접리스트 (Adjacency List) 인접다중리스트 (Adjacency Multilist) 6 장. 그래프 (Page ) 인접행렬 (Adjacency Matrix) n 개의 vertex 를갖는그래프 G 의인접행렬의구성 A[n][n] (u, v) E(G) 이면, A[u][v] = Otherwise, A[u][v]

More information

BIOROBOTICS LAB. MATLAB 수업자료 ( 기계항공시스템해석 ) 1. Matlab 의소개 1.1 Matlab 이란? Matlab이란 MATrix LABoratory를뜻하는말로서, 수치해석, 행렬연산, 신호처리및간편한그래픽기능등을통합하여고성

BIOROBOTICS LAB. MATLAB 수업자료 ( 기계항공시스템해석 ) 1. Matlab 의소개 1.1 Matlab 이란? Matlab이란 MATrix LABoratory를뜻하는말로서, 수치해석, 행렬연산, 신호처리및간편한그래픽기능등을통합하여고성 MATLAB 수업자료 ( 기계항공시스템해석 2009.03.18) 1. Matlab 의소개 1.1 Matlab 이란? Matlab이란 MATrix LABoratory를뜻하는말로서, 수치해석, 행렬연산, 신호처리및간편한그래픽기능등을통합하여고성능의수치계산및결과의가시화기능을제공하는프로그램이다. Matlab은행렬과벡터를기본자료로사용하여기능을수행하는계산환경을제공한다.

More information

Microsoft PowerPoint - e pptx

Microsoft PowerPoint - e pptx Import/Export Data Using VBA Objectives Referencing Excel Cells in VBA Importing Data from Excel to VBA Using VBA to Modify Contents of Cells 새서브프로시저작성하기 프로시저실행하고결과확인하기 VBA 코드이해하기 Referencing Excel Cells

More information

Microsoft PowerPoint - Chapter_04.pptx

Microsoft PowerPoint - Chapter_04.pptx 프로그래밍 1 1 Chapter 4. Constant and Basic Data Types April, 2016 Dept. of software Dankook University http://embedded.dankook.ac.kr/~baeksj 이장의강의목표 2 기본자료형문자표현방식과문자자료형상수자료형변환 기본자료형 (1/8) 3 변수 (Variables)

More information

본 강의에 들어가기 전

본 강의에 들어가기 전 C 기초특강 종합과제 과제내용 구조체를이용하여교과목이름과코드를파일로부터입력받아관리 구조체를이용하여학생들의이름, 학번과이수한교과목의코드와점수를파일로부터입력 학생개인별총점, 평균계산 교과목별이수학생수, 총점및평균을계산 결과를파일에저장하는프로그램을작성 2 Makefile OBJS = score_main.o score_input.o score_calc.o score_print.o

More information

歯MW-1000AP_Manual_Kor_HJS.PDF

歯MW-1000AP_Manual_Kor_HJS.PDF Page 2 Page 3 Page 4 Page 5 Page 6 Page 7 Page 8 Page 9 Page 10 Page 11 Page 12 Page 13 Page 14 Page 15 Page 16 Page 17 Page 18 Page 19 Page 20 Page 21 Page 22 Page 23 Page 24 Page 25 Page 26 Page 27 Page

More information

Microsoft PowerPoint - ch07 - 포인터 pm0415

Microsoft PowerPoint - ch07 - 포인터 pm0415 함수의인수 (argument) 전달방법 C 에서함수의인수전달방법 값에의한호출 (call-by-value): 기본적인방법 포인터에의한호출 (call-by-pointer): 포인터이용 참조에의한호출 (call-by-reference): 참조 (reference) 이용 7-35 값에의한호출 (call-by-value) 함수호출시에변수의값을함수에복사본으로전달 복사본이전달되며,

More information

문서 템플릿

문서 템플릿 HDSI 툴분석 [sql injection 기술명세서 ] Sql injection 기술명세서 Ver. 0.01 이문서는 sql injection 기술명세가범위입니다. Copyrights Copyright 2009 by CanvasTeam@SpeeDroot( 장경칩 ) All Rights Reserved. 장경칩의사전승인없이본내용의전부또는일부에대한복사, 전재,

More information

Slide 1

Slide 1 SeoulTech 2011-2 nd 프로그래밍입문 (2) Chapter 5. 배열 박종혁교수 (http://www.parkjonghyuk.net) Tel: 970-6702 Email: jhpark1@snut.ac.kr Learning Objectives 배열의소개 배열의선언과참조 For 루프와배열 메모리상의배열 함수에서의배열 함수인자로써의배열과리턴값 배열프로그램

More information

MATLAB for C/C++ Programmers

MATLAB for C/C++ Programmers 오늘강의내용 (2014/01/17) 파일입출력 MATLAB에서계산한데이터를바이너리파일또는텍스트파일의형태로디스크에저장 디스크에저장된파일을 MATLAB workspace 상으로읽어오기 1 파일입출력 2 MATLAB File I/O 여러종류의함수제공 이진화된파일 (binary file) 의읽고쓰기 형식화된파일 (formatted ASCII) 의읽고쓰기 파일입출력함수

More information

슬라이드 1

슬라이드 1 School of Mechanical Engineering Pusan National University dongwoonkim@pusan.ac.kr Teaching Assistant 김동운 dongwoonkim@pusan.ac.kr Lab office: 기계관 3301 ( 510-3921) 방사선영상연구실홈페이지 http://bml.pusan.ac.kr 2

More information

Data Structure

Data Structure Array and Pointer C- 언어의활용을위한주요기법 (2) Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr 배열 배열 (1/2) 배열 유도형자료유형의하나로기본자료유형을변형하여만들어진다. 동일한자료유형을가지는여러변수의집합 배열을구성하는데이터들을배열원소 (Element) 라고한다. 배열은하나의이름을공유 배열원소는변수와

More information

Microsoft Word - matlab.doc

Microsoft Word - matlab.doc I. 매트랩(MATLAB) [MATLAB 이란?] Matlab은 Mathworks Inc.에서 개발한 Software 이다. 다양한 수치 해석 관련 문제에 대한 Total Solution 제공. 사용하는 OS 에 상관없이 동일한 사용 방법 제공. 수많은 데이터 display functions 제공. 수많은 응용분야에 대한 전문적인 Toolbox 제공. 쉽고

More information

ºÎ·ÏB

ºÎ·ÏB B B.1 B.2 B.3 B.4 B.5 B.1 2 (Boolean algebra). 1854 An Investigation of the Laws of Thought on Which to Found the Mathematical Theories of Logic and Probabilities George Boole. 1938 MIT Claude Sannon [SHAN38].

More information

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100

Microsoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100 2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack

More information

; struct point p[10] = {{1, 2, {5, -3, {-3, 5, {-6, -2, {2, 2, {-3, -3, {-9, 2, {7, 8, {-6, 4, {8, -5; for (i = 0; i < 10; i++){ if (p[i].x > 0 && p[i

; struct point p[10] = {{1, 2, {5, -3, {-3, 5, {-6, -2, {2, 2, {-3, -3, {-9, 2, {7, 8, {-6, 4, {8, -5; for (i = 0; i < 10; i++){ if (p[i].x > 0 && p[i ; struct point p; printf("0이아닌점의좌표를입력하시오 : "); scanf("%d %d", &p.x, &p.y); if (p.x > 0 && p.y > 0) printf("1사분면에있다.\n"); if (p.x < 0 && p.y > 0) printf("2사분면에있다.\n"); if (p.x < 0 && p.y < 0) printf("3사분면에있다.\n");

More information

= ``...(2011), , (.)''

= ``...(2011), , (.)'' Finance Lecture Note Series 사회과학과 수학 제2강. 미분 조 승 모2 영남대학교 경제금융학부 학습목표. 미분의 개념: 미분과 도함수의 개념에 대해 알아본다. : 실제로 미분을 어떻게 하는지 알아본다. : 극값의 개념을 알아보고 미분을 통해 어떻게 구하는지 알아본다. 4. 미분과 극한: 미분을 이용하여 극한값을 구하는 방법에 대해 알아본다.

More information

강의 개요

강의 개요 정규화와 SELECT (II) 웹데이터베이스 학과 학생 과목 학과 지도교수 학과학번성명 수강과목 담당교수 A 김수정 A 0001 고길동 성질이론 김수정 B 허영만 A 0002 둘리 한식의멋 허영만 C 강풀 B 0003 희동이 심리학의이해 강풀 과목 _ 성적 학번 수강과목 성적 0001 성질이론 A 0001 한식의멋 C 0002 성질이론 A 0002 한식의멋

More information

슬라이드 1

슬라이드 1 Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치

More information

Microsoft PowerPoint - chap03-변수와데이터형.pptx

Microsoft PowerPoint - chap03-변수와데이터형.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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션 @ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program

More information

MATLAB for C/C++ Programmers

MATLAB for C/C++ Programmers 파일입출력 1 MATLAB File I/O 여러종류의함수제공 이진화된파일 (binary file) 의읽고쓰기 형식화된파일 (formatted ASCII) 의읽고쓰기 파일입출력함수 save, load 함수 MATLAB 에서사용하는데이터타입을저장및불러오기 dlmread, dlmwrite 사용자가지정한구분자 (delimiter) 형태로텍스트파일에저장 cvsread,

More information

슬라이드 1

슬라이드 1 -Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역

More information

BMP 파일 처리

BMP 파일 처리 BMP 파일처리 김성영교수 금오공과대학교 컴퓨터공학과 학습내용 영상반전프로그램제작 2 Inverting images out = 255 - in 3 /* 이프로그램은 8bit gray-scale 영상을입력으로사용하여반전한후동일포맷의영상으로저장한다. */ #include #include #define WIDTHBYTES(bytes)

More information

C++ Programming

C++ Programming C++ Programming 연산자다중정의 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 연산자다중정의 C++ 스타일의문자열 2 연산자다중정의 연산자다중정의 단항연산자다중정의 이항연산자다중정의 cin, cout 그리고 endl C++ 스타일의문자열 3 연산자다중정의 연산자다중정의 (Operator

More information

쉽게 풀어쓴 C 프로그래밍

쉽게 풀어쓴 C 프로그래밍 제 3 장함수와문자열 1. 함수의기본적인개념을이해한다. 2. 인수와매개변수의개념을이해한다. 3. 함수의인수전달방법 2가지를이해한다 4. 중복함수를이해한다. 5. 디폴트매개변수를이해한다. 6. 문자열의구성을이해한다. 7. string 클래스의사용법을익힌다. 이번장에서만들어볼프로그램 함수란? 함수선언 함수호출 예제 #include using

More information

(JBE Vol. 21, No. 1, January 2016) (Regular Paper) 21 1, (JBE Vol. 21, No. 1, January 2016) ISSN 228

(JBE Vol. 21, No. 1, January 2016) (Regular Paper) 21 1, (JBE Vol. 21, No. 1, January 2016)   ISSN 228 (JBE Vol. 1, No. 1, January 016) (Regular Paper) 1 1, 016 1 (JBE Vol. 1, No. 1, January 016) http://dx.doi.org/10.5909/jbe.016.1.1.60 ISSN 87-9137 (Online) ISSN 16-7953 (Print) a), a) An Efficient Method

More information

MATLAB

MATLAB 목차 Matlab이란무엇인가? Matlab 특징 Matlab 시작 행렬 연산자 꼭알아야할명령어 M-file 프로그래밍 명령어의흐름제어 목차 (cont d) M-file Debugging subfunction 다차원배열 M-file작성시유용한함수들 Matlab Graphics 자주쓰는그래픽관련함수 Matlab을이용한신호처리예제 예제의해결포인트 Matlab 은무엇인가?

More information

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2 6.1 함수프로시저 6.2 서브프로시저 6.3 매개변수의전달방식 6.4 함수를이용한프로그래밍 3 프로시저 (Procedure) 프로시저 (Procedure) 란무엇인가? 논리적으로묶여있는하나의처리단위 내장프로시저 이벤트프로시저, 속성프로시저, 메서드, 비주얼베이직내장함수등

More information