슬라이드 1
|
|
- 상훈 준
- 5 years ago
- Views:
Transcription
1 제 2 장 프로그램작성기법
2 >= 크거나같은 관계연산자 관계및논리연산자 MATLAB 논리데이터형식 : 1 은참, 0 은거짓 논리들은관계및논리연산자 / 함수들, 그리고 true 및 false 함수에의하여생성 : >> a = true a = 1 >> b = false b = 0 >> c = 1 c = 1 MATLAB 의관계연산자 : 연산자 의미 == 대등 ~= 같지않음 < 작은 > 큰 <= 작거나같은
3 논리연산자 스칼라사이의비교 : 관계가참이면논리 1 이, 거짓이면논리 0 이생성 : >> 2 > 3 0 (OR) 연산자의예 : >> 행렬 - 행렬비교 : 해당되는원소쌍들이비교 행렬 - 스칼라비교 : 스칼라가각행렬원소와비교 >> [2 3] < [3 2] 1 0 >> x = -2:2; x >= >> A = [1 2; 3 4]; B = 2*ones(2); >> A == B >> A >
4 x(x >= 0): x 의 0 이아닌원소들만으로구성되는벡터를제시 x = -2:2 이라면 >> x = -2:2; >> x(x >= 0) 논리배열을사용하여다른배열로부터원소들을선택하는경우 : 두배열의크기가같아야 논리배열에서각각의 1 에해당하는원소들이선택되는반면에각각의 0 에해당되는원소들은 선택되지않는다. 배열 A 와 B 의크기가같으면서원소들이서로동일한지를알아보려면 isequal(a,b) 를이용 : >> A = [1 2; 3 4]; B = 2*ones(2); >> isequal(a,b) 0 논리함수 isinf(a): 크기가 A 와같으며 A 의원소가 +, 혹은 - inf 인위치에참 (1) 을포함하고그 렇지않은위치에는거짓 (0) 을포함하는논리배열을반환 >> A = [1 inf; -inf NaN]; >> isinf(a)
5 변수의값에 NaN( 부정치 ), inf( 무한대 ), [ ]( 빈배열, 혹은빈행렬 ) 를인정 이름이 is 로시작되는 MATLAB 내장논리함수 : 논리 is* 함수 기능 ischar char 배열 ( 문자열 ) 인지를테스트 isempty 빈배열인지를테스트 isequal 배열들이서로동일한지를테스트 isfinite 유한배열원소들을검지 isfloat 부동소수점배열 (single, 혹은 double) 인지를테스트 isinf 무한배열원소들을검지 isinteger 정수배열인지를테스트 islogical 논리배열인지를테스트 isnan NaN 배열원소들을검지 isnumeric 수치배열 ( 정수, 혹은부동소수점 ) 인지를테스트 isreal 실수배열인지를테스트 isscalar 스칼라배열인지를테스트 issorted 정렬된벡터인지를테스트 isvector 벡터배열인지를테스트
6 A 가허수부분을갖지않는다면 isreal(a) 은참 A 가허수부를갖는지의여부를결정 : >> a = 1; >> b = complex(1,0); >> c = 1+0i; >> [a b c] >> [isreal(a), isreal(b), isreal(c)] 논리연산자 : 연산자 & && 의미 논리 and 단락 ( 短絡 ) 논리 and 논리 or 단락 ( 短絡 ) 논리 or ~ 논리 not xor all any 배타적논리 or 벡터의모든원소들이 0 이아니면참 벡터의임의의원소가 0 이아니면참
7 &, 및 ~ 연산자 : 인수들가운데하나가행렬이면논리 0 과논리 1 들의행렬을생성 all 함수를벡터에적용 : 그벡터의모든원소들이 0 이아니면 1 을, 그렇지않으면 0 을반환 any 함수 : 모든 을 임의의 로바꾸어 all 함수와동일하게정의 >> x = [-1 1 1]; y = [1 2-3]; >> x>0 & y> >> x>0 y> >> xor(x>0,y>0) >> any(x>0) 1 >> all(x>0) 0 xor: xor(a,b) 와같이함수로호출
8 && 와 : 스칼라표현에대해서만작용, & 이나 보다우선적으로사용 >> any(x>0) && any(y>0) 1 >> x>0 && y>0??? Operands to the and && operators must be convertible to logical scalar values. expr1 && expr2 에서 expr1 이거짓이면 expr2 는평가되지않는다. expr1 expr2 에서 expr1 이참이면 expr2 는평가되지않는다.
9 산술, 관계및논리연산자들의우선순위 : 우선순위 연산자 1( 가장높음 ) 괄호 () 2 전치 (. ), 거듭제곱 (.^), 켤 fp 복소수전치 ('), 행렬의거듭제곱 (^) 3 단항 +, 단항 -, 논리부정 (~) 4 곱 (.*), 오른쪽나누기 (./), 왼쪽나누기 (.\), 행렬곱 (*), 행렬오른쪽나누기 (/), 행렬왼쪽나누기 (\) 5 더하기 (+), 빼기 (-) 6 콜론연산자 (:) 7 작은 (<), 같거나작은 (<=), 큰 (>), 같거나큰 (>=), 동일한 (==), 같지않은 (~=) 8 논리 and (&) 9 논리 or ( ) 10 논리단락 and (&&) 11( 가장낮음 ) 논리단락 or ( )
10 행렬의경우 all 로부터 all 이각열에적용된결과를포함하는행벡터가생성 all(all(a==b)): 행렬 A 와 B 가동일한것인지의여부를시험하는하나의방법 any(any(a==b)): A 와 B 가임의의동일한원소들을갖는경우 1 의값을가지며그렇지않으면 0 find: 벡터의 0 이아닌원소들에해당하는지수들을반환 >> x = [ inf 0]; >> f = find(x) f = find 의결과는다시그벡터의원소들을추출하는데에사용가능 : >> x(f) Inf find 를이용한유한원소의획득 : >> x = [ inf 0]; >> x(find(isfinite(x))) 음의성분들을 0 으로대체 : >> x(find(x < 0)) = 0 x =
11 find 를이용하여 B 의해당되는위치의원소들보다작은 A 의원소들에 0 을설정하는방법 : >> A = [4 2 16; ], B = [12 3 1; ] A = B = >> f = find(a<b) f = >> A(f) = 0 A =
12 4 가지흐름제어구조 : if, for, while, switch if 문 프로그램흐름의제어 가장간단한형태 : if ( 조건 ) ( 문장 ) end if 문장다음에다른문장이더이어지면콤마를이용하여 if 를그다음문장과분리 : if x > 0, x = sqrt(x); end ( 조건 ) 이거짓일경우에만수행되는문장 : else 다음에위치 v = exp(1); if 2^v > v^2 disp('2^v is bigger') else disp('v^2 is bigger') end
13 elseif 를이용하여하나, 혹은그이상의조건들을추가 (else 와 if 사이에빈칸이없어야한다 ): if isnan(x) disp('not a Number') elseif isinf(x) disp('plus or minus infinity') else disp('a floating point number') end for 루프 간략하고빠른코드의작성에관심이있는프로그래머 : 가능한한 for 루프의사용을회피 for ( 변수 ) = ( 표현 ) ( 문장 ) end 대괄호를사용한 ( 표현 ) 의정의 : >> for x = [pi/6 pi/4 pi/3], disp([x sin(x)]), end
14 (i,j) 원소가일때 i/j 인 5 x 5 행렬 A 를생성 : n = 5; A = eye(n); for j = 2:n for i = 1:j-1 A(i,j) = i/j; A(j,i) = i/j; end end continue 는 for 루프의나머지문장들을그냥지나치게하여루프의수행을즉시다음번반복단계로이동 5 에서 10 까지의정수들만을나타내어주는예 : for i = 1:10 if i < 5, continue, end disp(i) end
15 while 루프 형태 : while ( 표현 ) ( 문장 ) end ( 표현 ) 이참인한 ( 문장 ) 이수행 0 이아닌가장작은부동소수점수를근사하는보기 : x = 1; while 1 xmin = x; x = x/2; if x == 0, break, end end xmin xmin = e-324 break 로종료 : 프로그램의제어를해당되는 end 다음의첫번째문장으로전달 while 1,..., end 와같은무한루프의형성 : 루프의처음부분에수행중단테스트를두는것이 편리하지않을경우에유용 break 는 for 루프의중단에도사용가능 중첩된루프에서 break 는바로윗단계의루프로옮겨가도록하여준다.
16 while 을사용한무한수열의합 : % infsum.m : 무한수열의합 n = 1; oldsum = -1; newsum = 0; while newsum > oldsum oldsum = newsum; newsum = newsum + n^(-4); n = n + 1; end newsum 이파일의수행결과 : >> infsum newsum =
17 switch 문 switch 제어구조 : switch ( 표현 ) 다음에일련의 case ( 표현 ) ( 문장 ) 들이이어지는것으로구성 경우에따라 otherwise ( 문장 ) 과 end 로종료 switch 의 ( 표현 ) 이평가되고그결과와부합되는첫번째 case ( 표현 ) 다음의 ( 문장 ) 이수행 case 들가운데어느것도평가결과와부합되지않으면 otherwise 다음의 ( 문장 ) 이수행 입력에대하여세가지경우들을구별하는예 : function y = count(x) switch x case 1 y = 'one' case 2 y = 'two' otherwise y = 'many' end 세가지 p 값에대하여벡터 x 의 p- 놈 (norm)( 즉 norm(x,p)) 을계산하는예 : switch p case 1 y = sum(abs(x)); case 2 y = sqrt(x'*x); case inf y = max(abs(x)); otherwise error('p must be 1, 2 or inf.') end
18 case 다음의 ( 표현 ) 은괄호로싸인값들의목록 : switch 의 ( 표현 ) 은목록의임의의값과대조 : x = input('enter a real number: '); switch x case {inf,-inf} disp('plus or minus infinity') case 0 disp('zero') otherwise disp('nonzero and finite') End case 그룹표현이일단부합되고문장이수행되면흐름의제어는 switch 후의첫번째문장으 로이동 - break 문장의사용은불필요
19 셀 셀과구조체 배열의배열 로서셀배열의원소들은각기다른데이터형식과다른크기를가질수있다. 명령어 cell 은빈셀배열을생성 셀배열의생성 : 소괄호나중괄호를이용 >> A(1,1) = {' 박영수 '}; A(1,2) = { }; >> A(2,1) = {' 김철수 '}; A(2,2) = { }; >> A A = ' 박영수 ' [2.0080e+009] ' 김철수 ' [2.0080e+009] >> A{1,1} = {' 박영수 '}; A{1,2} = { }; >> A{2,1} = {' 김철수 '}; A{2,2} = { }; >> A A = {1x1 cell} {1x1 cell} {1x1 cell} {1x1 cell}
20 celldisp 함수 : 셀배열의내용을확인 >> celldisp(a) A{1,1}{1} = 박영수 A{2,1}{1} = 김철수 A{1,2}{1} = e+009 A{2,2}{1} = e+009 cellplot 함수 : 셀배열을그림으로보여주는함수 >> cellplot(a)
21 2 x 2 셀배열을설정하는보기 : >> C = {1:3, pi; magic(2), 'A string'} C = [1x3 double] [ ] [2x2 double] 'A string' 셀배열원소의획득 : >> C{2,1} >> C{2,1}(1,2) 3 구조체 C 와같은프로그램언어들에서의구조체 (structure) 와유사 배열의원소들에이름을붙일수있으며원소들은각기다른형태와크기를가질수있다. 구조체를만드는한가지방법 : struct 를사용 >> sa = struct('data', [ ], 'description', 'perfect squares') sa = data: [ ] description: 'perfect squares'
22 필드 에접속 : sa.data 와같이배열의이름과필드의이름을타이프하고이들사이를마침표로구분 >> sa = struct; >> sa.data = [ ]; >> sa.description = 'perfect squares' sa = data: [ ] description: 'perfect squares' 구조체의배열 : 데이터베이스등을관리할때편리 보기 : name", 'ID", "mark" 와같은 3 개의필드를가지며원소가 30 개인 student 구조체배열의생성 >> student(30) = struct('name',' 이영수 ','ID', ','mark',[ ]); >> student(2) name: [] ID: [] mark: [] >> student(5).name = ' 김철수 ' student = 1x30 struct array with fields: name ID mark
23 cell2struct 와 struct2cell: 셀배열과구조체간의전환을수행 num2cell: 주어진수치배열과같은크기의셀배열을생성 동적구조체의보기 : marks 는 4 회에걸친학생들의시험성적을나타내는구조체 >> marks.lee_youngsoo.test(1:4) = [ ]; >> marks.hong_killdong.test(1:4) = [ ]; >> marks.park_kiyoon.test(1:4) = [ ]; 함수 M- 파일 testmark.m 은입력된학생에대한평균점수를계산 : % testmark.m: Dynamic structure 의사용예 function avg = testmark(marks,student,first,last) for i = first:last scores(i) = marks.(student).test(i); end avg = sum(scores)/(last-first+1); 수행결과 : >> testmark(marks,'park_kiyoon',1,4) 85 >> testmark(marks,'lee_youngsoo',1,4) >> testmark(marks,'hong_killdong',2,3)
24 구조체를이용한데이터베이스의생성 : 각지역의기상측정시각과온도 ( 데이터표현의보기 >> meteo = struct('city',{' 서울 ',' 대전 ',' 부산 '},... 'Time',{ },... 'Temperature',{ },... 'Pressure',{ }) meteo = 1x3 struct array with fields: City Time Temperature Pressure >> meteo(1) City: ' 서울 ' Time: 9 Temperature: 27 Pressure: e+003 >> meteo(3) City: ' 부산 ' Time: 12 Temperature: 31 Pressure: e+003 ) 및압력 (mmbar)
25 문자열 문자열이나문자배열 (char 배열 ): MATLAB 에서내부적으로해당되는 ASCII 값들에의하여나타나는문자들의배열 >> s = 'ABCabc' s = ABCabc >> sd = double(s) sd = >> s2 = char(sd) s2 = ABCabc 2 차원문자배열 : 대괄호를이용하여생성 >> subjects = ['Chemistry';'Physics '] subjects = Chemistry Physics
26 char 함수 : 문자배열의생성에이용 >> W = char('kinetic energy','potential energy', 'Momentum',' 질량 ') W = Kinetic energy Potential energy Momentum 질량 텍스트데이터를셀배열로저장 : >> S = {'Kinetic energy';'potential energy'; 'Momentum';' 질량 '} S = 'Kinetic energy' 'Potential energy' 'Momentum' ' 질량 ' 문자배열을셀배열로, 혹은문자의셀배열을문자배열로자유로이전환 : >> S = cellstr(w); >> W = char(s); 문자열의각문자는 2 바이트를차지 문자열을 double 배열로전환 : 각원소당 8 바이트를차지하는 ASCII 값들의배열이생성
27 int2str, num2str, 혹은 sprintf 들을이용하여수치변수값들의포맷을변형시켜문자열을생성 >> v = sin((1:3)*pi/6) v = >> num2str(v) >> q = reshape(1:9,3,3) q = >> int2str(q) >> size(ans) 3 7 >> num2str(pi,2) % 자릿수를지정 (2 자리 ) 3.1 >> num2str(pi,15) >> num2str(pi,'%12.5e') % 출력포맷을지정 e+000
28 함수 sprintf 는보통포맷지정자와함께사용 여러가지포맷형태에따른 sprintf 출력 : sprintf 와포맷지정자 출력 sprintf('%d',round(pi)) 3 sprintf('%d',pi) e+000 sprintf('%s','hello') hello sprintf('the array is %dx%d.',4,5) The array is 4x5. sprintf('\n') ( 줄마침문자 ) 문자열의명령어이용 : >> str = 'sin'; >> t = linspace(0,2*pi); >> q = feval(str,t); >> plot(t,q)
29 strcat 함수 : 두문자열들을보다긴하나의문자열로연결 >> strcat('hello',' world') Hello world >> ['Hello ' 'world'] Hello world strcmp: 두문자열들을서로비교 - strcmp(s,t) 로부터는 s 와 t 가동일하면 1( 참 ), 그렇지않으면 0( 거짓 ) 이반환 strcmpi: 대문자와소문자를대등한것으로간주 >> strcmp('matlab6','matlab7') 0 >> 'Matlab6'=='Matlab7' 관계연산자 : 길이가같은문자열들만을비교하는데에사용. 어떤문자가서로일치하는지를보여주는논리벡터를반환 하나의문자열이다른문자열에포함되는지를테스트하려면 findstr 을이용 : findstr(s,t) 는더짧은문자열이그보다긴문자열속에나타나는위치들의지수들로이루어지는벡터를반환 : >> findstr('bc','abcd') 2 >> findstr('abacad','a') 1 3 5
30 주어진문자열에서빈칸과글자를구분 : >> S = 'I go now'; >> isspace(s) >> isletter(s) strrep: 하나의문자열을다른문자열로대체, 하나의문자를빈칸으로대체 >> S = 'I go now'; >> strrep(s,'go','am') % go 를 am 으로대체 I am now >> strrep(s,'go','eat snakes') I eat snakes now >> strrep(s,'o','e') % o 를 e 로대체 I ge new >> strrep(s,'o',' ') % o 를빈칸으로대체 I g n w
31 다차원배열 다차원배열 : 행렬의경우와유사하게정의하고처리 불규칙정규숫자들의 3 x 2 x 2 배열 >> A = randn(3,2,2) A(:,:,1) = A(:,:,2) = 기존의 2 차원배열에서원소들에고차원요소를할당함으로써차원을확장 >> B = [1 2 3; 4 5 6]; >> B(:,:,2) = ones(2,3) B(:,:,1) = B(:,:,2) =
32 ndims: 차원의수를확인 size: 각차원의원소들의수를반환 >> ndims(b) 3 >> size(b) cat: 한문장에서원소들을나열하여다차원배열을구성 - 이함수에대한첫번째인수 ( 아래 보기에서 3) 는나머지인수들로이루어지는배열들이연결되는차원을지정 : >> C = cat(3,[1 2 3; ],[ ; ]) C(:,:,1) = C(:,:,2) = 원소각각에작용하는함수 : 연산, 논리, 그리고관계연산자들과마찬가지로다차원배열에적용
33 예 : B-ones(size(B)), B.*B, exp(b), 2.^B, 그리고 B > 0 들로부터는모두예상되는결과들이반환 >> sum(b) ans(:,:,1) = ans(:,:,2) = >> sum(b,3) 다차원배열의처리를수행하는함수 : 함수 cat ndims ndgrid permute ipermute shiftdim squeeze 기능배열들을연결차원들의수다차원함수들과안짐작을위한배열을생성배열차원을순열배열차원을역순열차원을전이단독차원을제거
34 global 변수 스크립트 M-파일변수 : Workspace( 작업공간 ) 에기억되어명령어창, 스크립트 M-파일내에서모두구별하지않고사용 함수 M-파일에서사용되는변수 : 작업공간에남지않으며함수내에서작업공간에있는변수를참조불가 함수내에서작업공간의변수를자유롭게읽어내어사용하고싶은경우 : 그변수를 global 변수라고선언 global 변수의선언 : 작업공간과함수 M-파일두부분에서모두선언 global x y
35 Persistent 변수 함수내에서만내부적으로변수값을유지하고싶은경우 : 그변수를 persistent 변수로선언 persistent 키워드는 C 언어등의 static 변수와같은기능을수행 persistent 선언 : 사용하는함수내에서만수행 persistent 변수의초기치는함수내에변수가정의되어있는지의여부로판단 구체적으로는 isempty 함수에의해판별 persistent x y if(isempty(x)) x=0; end
36 입력및출력인수의분석 사용자는자신의 M- 파일들에서명령어 nargin, nargout, varargin, varargout 들을사용하여다 양한수의입력및출력인수들을처리 다른형태의입력인수들을처리하기위해 isnumeric, ischar 등과같은명령어들을사용가능 함수 M- 파일이수행되면함수 nargin 과 nargout 은각각명령어라인에서지정된입력및출 력인수들의수를제시 nargin 사용의예시 : function s = add(x, y, z) if nargin < 2 error(' 적어도두개의입력인수들이필요함.') end if nargin == 2 s = x + y; else s = x + y + z; end 더많은수의가능한입력의허용 : varargin 을이용 function s = add(varargin) s = sum([varargin{:}]);
37 이예에서모든입력인수들은셀배열 varargin 에할당 varargin{:}: 콤마로구분되는입력인수들의목록을구성 입력가운데어떤것이수치값을갖지않으면오류메시지가 display: isnumeric 을사용 function s = add(varargin) if ~isnumeric([varargin{:}]) error(' 입력들은부동소수점수이어야한다.') end s = sum([varargin{:}]);
38 프로그램의편집 Command Window 에서의편집 명령어라인, 혹은편집창에서프로그램이두줄이상으로길어질경우세개의마침표 (...) 를 이용하여프로그램을여러줄로이어작성 : >> x = 1 + 1/2 + 1/3 + 1/4 + 1/ /6 + 1/7 + 1/8 + 1/9 + 1/10 x =
39 명령어창에서의편집키와명령어 : 키 대등한제어키 기능 위쪽화살표 () Ctrl-p 이전라인을호출 아래쪽화살표 () Ctrl-n 다음라인을호출 왼쪽화살표 () Ctrl-b 한글자뒤로이동 오른쪽화살표 () Ctrl-f 한글자앞으로이동 Ctrl 왼쪽화살표 Ctrl-l 한단어왼쪽으로이동 Ctrl 오른쪽화살표 Ctrl-r 한단어오른쪽으로이 동 Home Ctrl-a 라인의시작부분 End Ctrl-e 라인의끝부분 Esc Ctrl-u 라인지우기 Del 뒤로가기 (backspac e) Insert Shift-home Shift-End Ctrl-d Ctrl-h Ctrl-k 커서가있는글자를삭제이전글자를삭제라인끝부분까지삭제삽입모드로전환라인시작부분까지선택라인끝부분까지선택
40 배열편집기 MATLAB 작업창의왼쪽에서 Workspace 탭을누른다음편집을원하는변수이름을두번클릭 : Array Editor( 배열편집기 ) 창에해당변수에대한스프래드쉬트형태가 display 혹은 openvar('a') 를입력 : A에대한 Array Editor가호출 변수의저장과호출 변수들의저장 : save filename 을입력 이와달리 File-Save Workspace As 메뉴옵션을선택가능 변수 A 와 x 만을저장 : >> save filename A x load filename: filename.mat 으로부터변수들을호출 MAT- 파일 : 다른컴퓨터시스템에서수행되는 MATLAB 들사이에서주고받을수있다. 가져오기함수들에대한그래픽접속기 : File-Import Data 메뉴옵션, 혹은 uiimport 를입력하 여접근할수있는 Import 마법사 보고서에삽입하기위한 MATLAB 출력의확보 : diary 를이용 diary filename: 모든이어지는입력및텍스트출력이지정된파일에복사
41 diary 기능의제거 : diary off disp: 변수의이름이나 ans 가나타나지않고변수나표현의값을프린트 >> A = eye(2); disp(a) >> disp('result:'),disp(1/7) Result: 운영체제와의접속 컴퓨터운영체제와작용하기위한명령어 : cd( 디렉토리바꾸기 ), copyfile( 파일복사 ), mkdir( 디 렉토리만들기 ), pwd( 작업디렉토리를프린트 ), dir 이나 ls( 디렉토리목록 ), delete( 파일지우기 ) 명령어앞에느낌표 (!): 운영체제로이동 예 :!emacs myscript.m 를입력하면 Emacs 편집기를이용하여 myscript 를편집가능
42 정보찾기 정보제공명령어 : 명령어 bench demo info ver version whatsne w 제공정보및기능사용자의컴퓨터속도를테스트하기위한견주기 (benchmark) 실증프로그램모음 The MathWorks 사에대한정보 MATLAB 및툴박스들의버전및발매일자 MATLAB의버전및발매일자 whatsnew는 Help 탐색기에서발매공고문을불러온다. whatsnew matlab은 MATLAB에대한 readme 파일을보여주는데이파일에서는가장최근버전에도입된새로운기능들을설명하여준다. whatsnew toolbox는지정된툴박스에대한 readme 파일을보여준다.
예제 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<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 informationMicrosoft 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 informationTcl의 문법
월, 01/28/2008-20:50 admin 은 상당히 단순하고, 커맨드의 인자를 스페이스(공백)로 단락을 짓고 나열하는 정도입니다. command arg1 arg2 arg3... 한행에 여러개의 커맨드를 나열할때는, 세미콜론( ; )으로 구분을 짓습니다. command arg1 arg2 arg3... ; command arg1 arg2 arg3... 한행이
More informationMATLAB for C/C++ Programmers
M-file 작성시유용한함수들 김탁은 kmste2@kaist.ac.kr 1 input 함수 사용자의입력을기다리는함수 r = input( prompt ) prompt 문자열을화면에출력하고사용자의입력을기다림 사용자가입력한문자열을 evaluation 하고, 그결과를 r 값으로반환 사용자의입력에나타난변수는 workspace 에미리선언되어있어야함 >> x = 5; >>
More informationOCW_C언어 기초
초보프로그래머를위한 C 언어기초 4 장 : 연산자 2012 년 이은주 학습목표 수식의개념과연산자및피연산자에대한학습 C 의알아보기 연산자의우선순위와결합방향에대하여알아보기 2 목차 연산자의기본개념 수식 연산자와피연산자 산술연산자 / 증감연산자 관계연산자 / 논리연산자 비트연산자 / 대입연산자연산자의우선순위와결합방향 조건연산자 / 형변환연산자 연산자의우선순위 연산자의결합방향
More informationMicrosoft 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슬라이드 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 informationchap 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프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음
프로그래밍개론및실습 2015 년 2 학기프로그래밍개론및실습과목으로본내용은강의교재인생능출판사, 두근두근 C 언어수업, 천인국지음을발췌수정하였음 CHAPTER 9 둘중하나선택하기 관계연산자 두개의피연산자를비교하는연산자 결과값은참 (1) 아니면거짓 (0) x == y x 와 y 의값이같은지비교한다. 관계연산자 연산자 의미 x == y x와 y가같은가? x!= y
More informationPowerPoint 프레젠테이션
실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3
More informationMicrosoft 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[ 마이크로프로세서 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 informationPowerPoint 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 informationMicrosoft 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 informationMicrosoft 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 informationPowerPoint 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 informationPowerPoint 프레젠테이션
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 information02장.배열과 클래스
---------------- DATA STRUCTURES USING C ---------------- CHAPTER 배열과구조체 1/20 많은자료의처리? 배열 (array), 구조체 (struct) 성적처리프로그램에서 45 명의성적을저장하는방법 주소록프로그램에서친구들의다양한정보 ( 이름, 전화번호, 주소, 이메일등 ) 를통합하여저장하는방법 홍길동 이름 :
More informationMicrosoft PowerPoint - C++ 5 .pptx
C++ 언어프로그래밍 한밭대학교전자. 제어공학과이승호교수 연산자중복 (operator overloading) 이란? 2 1. 연산자중복이란? 1) 기존에미리정의되어있는연산자 (+, -, /, * 등 ) 들을프로그래머의의도에맞도록새롭게정의하여사용할수있도록지원하는기능 2) 연산자를특정한기능을수행하도록재정의하여사용하면여러가지이점을가질수있음 3) 하나의기능이프로그래머의의도에따라바뀌어동작하는다형성
More information10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다
10 강. 쉘스크립트 쉘스크립트 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다른운영체제로이식되지않음 -스크립트언어를사용하면컴파일과정이없고인터프리터가소스파일에서명령문을판독하여각각의명령을수행
More information<4D F736F F F696E74202D20B8AEB4AABDBA20BFC0B7F920C3B3B8AEC7CFB1E22E BC8A3C8AF20B8F0B5E55D>
리눅스 오류처리하기 2007. 11. 28 안효창 라이브러리함수의오류번호얻기 errno 변수기능오류번호를저장한다. 기본형 extern int errno; 헤더파일 라이브러리함수호출에실패했을때함수예 정수값을반환하는함수 -1 반환 open 함수 포인터를반환하는함수 NULL 반환 fopen 함수 2 유닉스 / 리눅스 라이브러리함수의오류번호얻기 19-1
More information제 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학습목차 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 informationColumns 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 informationVector Differential: 벡터 미분 Yonghee Lee October 17, 벡터미분의 표기 스칼라미분 벡터미분(Vector diffrential) 또는 행렬미분(Matrix differential)은 벡터와 행렬의 미분식에 대 한 표
Vector Differential: 벡터 미분 Yonhee Lee October 7, 08 벡터미분의 표기 스칼라미분 벡터미분(Vector diffrential) 또는 행렬미분(Matrix differential)은 벡터와 행렬의 미분식에 대 한 표기법을 정의하는 방법이다 보통 스칼라(scalar)에 대한 미분은 일분수 함수 f : < < 또는 다변수 함수(function
More informationMicrosoft 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설계란 무엇인가?
금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 5 강. 배열, 포인터, 참조목차 배열 포인터 C++ 메모리구조 주소연산자 포인터 포인터연산 배열과포인터 메모리동적할당 문자열 참조 1 /20 5 강. 배열, 포인터, 참조배열 배열 같은타입의변수여러개를하나의변수명으로처리 int Ary[10]; 총 10 개의변수 : Ary[0]~Ary[9]
More information03장.스택.key
---------------- DATA STRUCTURES USING C ---------------- 03CHAPTER 1 ? (stack): (LIFO:Last-In First-Out) 2 : top : ( index -1 ),,, 3 : ( ) ( ) -> ->. ->.... 4 Stack ADT : (LIFO) : init():. is_empty():
More informationMicrosoft 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 informationA 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 informationMATLAB
목차 Matlab이란무엇인가? Matlab 특징 Matlab 시작 행렬 연산자 꼭알아야할명령어 M-file 프로그래밍 명령어의흐름제어 목차 (cont d) M-file Debugging subfunction 다차원배열 M-file작성시유용한함수들 Matlab Graphics 자주쓰는그래픽관련함수 Matlab을이용한신호처리예제 예제의해결포인트 Matlab 은무엇인가?
More informationMicrosoft PowerPoint - chap13-입출력라이브러리.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< E20C6DFBFFEBEEE20C0DBBCBAC0BB20C0A7C7D12043BEF0BEEE20492E707074>
Chap #2 펌웨어작성을위한 C 언어 I http://www.smartdisplay.co.kr 강의계획 Chap1. 강의계획및디지털논리이론 Chap2. 펌웨어작성을위한 C 언어 I Chap3. 펌웨어작성을위한 C 언어 II Chap4. AT89S52 메모리구조 Chap5. SD-52 보드구성과코드메모리프로그래밍방법 Chap6. 어드레스디코딩 ( 매핑 ) 과어셈블리어코딩방법
More informationJava ...
컴퓨터언어 1 Java 제어문 조성일 조건문 : if, switch 어떠한조건을조사하여각기다른명령을실행 if 문, switch 문 if 문 if - else 문형식 if 문형식 if ( 조건식 ) { 명령문 1; 명령문 2;... if ( 조건식 ) { 명령문 1; 명령문 2;... else { 명령문 a; 명령문 b;... 예제 1 정수를입력받아짝수와홀수를판별하는프로그램을작성하시오.
More informationPowerPoint 프레젠테이션
Chapter 10 포인터 01 포인터의기본 02 인자전달방법 03 포인터와배열 04 포인터와문자열 변수의주소를저장하는포인터에대해알아본다. 함수의인자를값과주소로전달하는방법을알아본다. 포인터와배열의관계를알아본다. 포인터와문자열의관계를알아본다. 1.1 포인터선언 포인터선언방법 자료형 * 변수명 ; int * ptr; * 연산자가하나이면 1 차원포인터 1 차원포인터는일반변수의주소를값으로가짐
More informationMicrosoft PowerPoint - 기계공학실험1-1MATLAB_개요2D.pptx
1. MATLAB 개요와 활용 기계공학실험 I 2013년 2학기 MATLAB 시작하기 이장의내용 MATLAB의여러창(window)들의 특성과 목적 기술 스칼라의 산술연산 및 기본 수학함수의 사용. 스칼라 변수들(할당 연산자)의 정의 및 변수들의 사용 방법 스크립트(script) 파일에 대한 소개와 간단한 MATLAB 프로그램의 작성, 저장 및 실행 MATLAB의특징
More informationMicrosoft PowerPoint - C프로그래밍-chap15.ppt [호환 모드]
Chapter 15 문자열 2009 한국항공대학교항공우주기계공학부 (http://mercury.kau.ac.kr/sjkwon) 1 문자의집합체 문자열의정의 일련의문자 C 언어에서문자열앞뒤에인용부호 를이용 문자와문자열과의차이 문자열의저장 (1) 배열을이용하는방법 문자열상수 c c language 를저장하는문자열배열 항상문자열마지막에는 NULL문자를넣어야함 (2)
More informationchap x: G입력
재귀알고리즘 (Recursive Algorithms) 재귀알고리즘의특징 문제자체가재귀적일경우적합 ( 예 : 피보나치수열 ) 이해하기가용이하나, 비효율적일수있음 재귀알고리즘을작성하는방법 재귀호출을종료하는경계조건을설정 각단계마다경계조건에접근하도록알고리즘의재귀호출 재귀알고리즘의두가지예 이진검색 순열 (Permutations) 1 장. 기본개념 (Page 19) 이진검색의재귀알고리즘
More information윤성우의 열혈 TCP/IP 소켓 프로그래밍
C 프로그래밍프로젝트 Chap 22. 구조체와사용자정의자료형 1 2013.10.10. 오병우 컴퓨터공학과 구조체의정의 (Structure) 구조체 하나이상의기본자료형을기반으로사용자정의자료형 (User Defined Data Type) 을만들수있는문법요소 배열 vs. 구조체 배열 : 한가지자료형의집합 구조체 : 여러가지자료형의집합 사용자정의자료형 struct
More informationInfinity(∞) Strategy
반복제어 표월성 passwd74@cherub.sungkyul.edu 개요 for() 문 break문과 continue문 while문 do-while문 for() 문 for() 문형식 for( 표현식1; 표현식2; 표현식3) 여러문장들 ; 표현식 1 : 초기화 (1 번만수행 ) 표현식 2 : 반복문수행조건 ( 없으면무한반복 ) 표현식 3 : 반복문수행횟수 for()
More informationChapter 4. LISTS
C 언어에서리스트구현 리스트의생성 struct node { int data; struct node *link; ; struct node *ptr = NULL; ptr = (struct node *) malloc(sizeof(struct node)); Self-referential structure NULL: defined in stdio.h(k&r C) or
More information0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x = (12 + 6) / 2 * 3; x = 27 x = 3 * (8 / 4
Introduction to software design 2012-1 Final 2012.06.13 16:00-18:00 Student ID: Name: - 1 - 0. 표지에이름과학번을적으시오. (6) 1. 변수 x, y 가 integer type 이라가정하고다음빈칸에 x 와 y 의계산결과값을적으시오. (5) x = (3 + 7) * 6; x = 60 x
More informationMicrosoft 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목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2
제 8 장. 포인터 목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2 포인터의개요 포인터란? 주소를변수로다루기위한주소변수 메모리의기억공간을변수로써사용하는것 포인터변수란데이터변수가저장되는주소의값을 변수로취급하기위한변수 C 3 포인터의개요 포인터변수및초기화 * 변수데이터의데이터형과같은데이터형을포인터 변수의데이터형으로선언 일반변수와포인터변수를구별하기위해
More informationC 언어 프로그래밊 과제 풀이
과제풀이 (1) 홀수 / 짝수판정 (1) /* 20094123 홍길동 20100324 */ /* even_or_odd.c */ /* 정수를입력받아홀수인지짝수인지판정하는프로그램 */ int number; printf(" 정수를입력하시오 => "); scanf("%d", &number); 확인 주석문 가필요한이유 printf 와 scanf 쌍
More informationMicrosoft PowerPoint - chap06-1Array.ppt
2010-1 학기프로그래밍입문 (1) chapter 06-1 참고자료 배열 박종혁 Tel: 970-6702 Email: jhpark1@snut.ac.kr 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- 배열의선언과사용 같은형태의자료형이많이필요할때배열을사용하면효과적이다. 배열의선언 배열의사용 배열과반복문 배열의초기화 유연성있게배열다루기 한빛미디어
More informationMicrosoft 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 informationMicrosoft PowerPoint - [2009] 02.pptx
원시데이터유형과연산 원시데이터유형과연산 원시데이터유형과연산 숫자데이터유형 - 숫자데이터유형 원시데이터유형과연산 표준입출력함수 - printf 문 가장기본적인출력함수. (stdio.h) 문법 ) printf( Test printf. a = %d \n, a); printf( %d, %f, %c \n, a, b, c); #include #include
More information슬라이드 1
-Part3- 제 4 장동적메모리할당과가변인 자 학습목차 4.1 동적메모리할당 4.1 동적메모리할당 4.1 동적메모리할당 배울내용 1 프로세스의메모리공간 2 동적메모리할당의필요성 4.1 동적메모리할당 (1/6) 프로세스의메모리구조 코드영역 : 프로그램실행코드, 함수들이저장되는영역 스택영역 : 매개변수, 지역변수, 중괄호 ( 블록 ) 내부에정의된변수들이저장되는영역
More informationPowerPoint 프레젠테이션
Chapter 06 반복문 01 반복문의필요성 02 for문 03 while문 04 do~while문 05 기타제어문 반복문의의미와필요성을이해한다. 대표적인반복문인 for 문, while 문, do~while 문의작성법을 알아본다. 1.1 반복문의필요성 반복문 동일한내용을반복하거나일정한규칙으로반복하는일을수행할때사용 프로그램을좀더간결하고실제적으로작성할수있음.
More informationJAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각
JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.
More informationMicrosoft 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<4D F736F F F696E74202D20C1A63036C0E520BCB1C5C3B0FA20B9DDBAB928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>
Power Java 제 6 장선택과반복 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break문 continue문 지금까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 3 가지의제어구조 조건문 문장이실행되는순서에영향을주는문장 조건에따라서여러개의실행경로가운데하나를선택
More informationC 프로그래밊 개요
구조체 2009 년 5 월 19 일 김경중 강의계획수정 일자계획 Quiz 실습보강 5 월 19 일 ( 화 ) 구조체 Quiz ( 함수 ) 5 월 21 일 ( 목 ) 구조체저녁 6 시 5 월 26 일 ( 화 ) 포인터 5 월 28 일 ( 목 ) 특강 (12:00-1:30) 6 월 2 일 ( 화 ) 포인터 Quiz ( 구조체 ) 저녁 6 시 6 월 4 일 ( 목
More information< 고급 C 프로그래밍및실습 > 11 장구조체실습문제 문제에대한안내 - 특별한언급이없으면문제의조건에맞지않는입력은입력되지않는다고가정하라. - 특별한언급이없으면, 각줄의맨앞과맨뒤에는공백을출력하지않는다. - 출력예시에서 는각줄의맨앞과맨뒤에출력되는공백을의미한다. - 입출력예시
문제에대한안내 - 특별한언급이없으면문제의조건에맞지않는입력은입력되지않는다고가정하라. - 특별한언급이없으면, 각줄의맨앞과맨뒤에는공백을출력하지않는다. - 출력예시에서 는각줄의맨앞과맨뒤에출력되는공백을의미한다. - 입출력예시에서 이후는각입력과출력에대한설명이다. 11장2절 [ 문제 1 ] 3차원벡터를저장할구조체를선언후두개의 3차원벡터 (V 1, V 2 ) 를입력받으시오.
More informationPowerPoint Presentation
객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean
More information설계란 무엇인가?
금오공과대학교 C++ 프로그래밍 jhhwang@kumoh.ac.kr 컴퓨터공학과 황준하 6 강. 함수와배열, 포인터, 참조목차 함수와포인터 주소값의매개변수전달 주소의반환 함수와배열 배열의매개변수전달 함수와참조 참조에의한매개변수전달 참조의반환 프로그래밍연습 1 /15 6 강. 함수와배열, 포인터, 참조함수와포인터 C++ 매개변수전달방법 값에의한전달 : 변수값,
More informationLab 3. 실습문제 (Single linked list)_해답.hwp
Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.
More informationPowerPoint Template
10 포인터 1 주소 Address( 주소 ) 메모리에는그메모리의저장장소의위치를나타내는주소값 주소 (address) 는 1 바이트마다 1 씩증가하도록메모리에는연속적인번호가구성 2 주소연산자 & & 변수 변수의주소값을알아내려면변수앞에주소연산자 & (ampersand) 를이용 주소값이용장단점 주소값을이용하면보다편리하고융통성있는프로그램이가능 그러나복잡하고어려운단점
More information11장 포인터
Dynamic Memory and Linked List 1 동적할당메모리의개념 프로그램이메모리를할당받는방법 정적 (static) 동적 (dynamic) 정적메모리할당 프로그램이시작되기전에미리정해진크기의메모리를할당받는것 메모리의크기는프로그램이시작하기전에결정 int i, j; int buffer[80]; char name[] = data structure"; 처음에결정된크기보다더큰입력이들어온다면처리하지못함
More information쉽게 풀어쓴 C 프로그래밍
쉽게풀어쓴 C 언어 Express 제 6 장조건문 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break 문 continue 문 goto 문 5 장까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 조건문 조건에따라서여러개의실행경로가운데하나를선택 문장이실행되는순서에영향을주는문장
More information쉽게 풀어쓴 C 프로그래밍
쉽게풀어쓴 C 언어 Express 제 6 장조건문 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 break 문 continue 문 goto 문 5 장까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 조건문 조건에따라서여러개의실행경로가운데하나를선택 문장이실행되는순서에영향을주는문장
More information17장 클래스와 메소드
17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는
More information컴파일러
YACC 응용예 Desktop Calculator 7/23 Lex 입력 수식문법을위한 lex 입력 : calc.l %{ #include calc.tab.h" %} %% [0-9]+ return(number) [ \t] \n return(0) \+ return('+') \* return('*'). { printf("'%c': illegal character\n",
More informationLab 4. 실습문제 (Circular singly linked list)_해답.hwp
Lab 4. Circular singly-linked list 의구현 실험실습일시 : 2009. 4. 6. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 12. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Circular Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Circular
More informationMicrosoft 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 informationuntitled
시스템소프트웨어 : 운영체제, 컴파일러, 어셈블러, 링커, 로더, 프로그래밍도구등 소프트웨어 응용소프트웨어 : 워드프로세서, 스프레드쉬트, 그래픽프로그램, 미디어재생기등 1 n ( x + x +... + ) 1 2 x n 00001111 10111111 01000101 11111000 00001111 10111111 01001101 11111000
More informationPowerPoint 프레젠테이션
@ 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 informationPowerPoint 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 informationMicrosoft PowerPoint - chap06-5 [호환 모드]
2011-1 학기프로그래밍입문 (1) chapter 06-5 참고자료 변수의영역과데이터의전달 박종혁 Tel: 970-6702 Email: jhpark1@seoultech.ac.kr h k 한빛미디어 출처 : 뇌를자극하는 C프로그래밍, 한빛미디어 -1- ehanbit.net 자동변수 지금까지하나의함수안에서선언한변수는자동변수이다. 사용범위는하나의함수내부이다. 생존기간은함수가호출되어실행되는동안이다.
More information06장.리스트
---------------- DATA STRUCTURES USING C ---------------- CHAPTER 리스트 1/28 리스트란? 리스트 (list), 선형리스트 (linear list) 순서를가진항목들의모임 집합 : 항목간의순서의개념이없음 리스트의예 요일 : ( 일요일, 월요일,, 토요일 ) 한글자음의모임 : ( ㄱ, ㄴ,, ㅎ ) 카드 :
More information<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 informationPHPoC vs PHP > 개요 개요 PHPoC 는솔내시스템 이자체개발한프로그래밍언어입니다. 당사의모든 PHPoC 제품들의펌웨어에는 PHPoC 인터프리터가내장되어있습니다. PHPoC 는범용스크립트언어인 PHP 를기반으로제작되었습니다. PHPoC 는매우간단하여 C 언어등
PHPoC vs PHP > 개요 개요 PHPoC 는솔내시스템 이자체개발한프로그래밍언어입니다. 당사의모든 PHPoC 제품들의펌웨어에는 PHPoC 인터프리터가내장되어있습니다. PHPoC 는범용스크립트언어인 PHP 를기반으로제작되었습니다. PHPoC 는매우간단하여 C 언어등프로그래밍언어에대한경험이있는사람이라면누구나쉽게사용할수있습니다. PHPoC 는기본적으로 PHP
More informationPowerPoint 프레젠테이션
Chapter 08 함수 01 함수의개요 02 함수사용하기 03 함수와배열 04 재귀함수 함수의필요성을인식한다. 함수를정의, 선언, 호출하는방법을알아본다. 배열을함수의인자로전달하는방법과사용시장점을알아본다. 재귀호출로해결할수있는문제의특징과해결방법을알아본다. 1.1 함수의정의와기능 함수 (function) 특별한기능을수행하는것 여러가지함수의예 Page 4 1.2
More information4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona
이름 : 학번 : A. True or False: 각각항목마다 True 인지 False 인지적으세요. 1. (Python:) randint 함수를사용하려면, random 모듈을 import 해야한다. 2. (Python:) '' (single quote) 는한글자를표현할때, (double quote) 는문자열을표현할때사용한다. B. 다음에러를수정하는방법을적으세요.
More informationPowerPoint 프레젠테이션
@ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field
More informationUI TASK & KEY EVENT
T9 & AUTOMATA 2007. 3. 23 PLATFORM TEAM 정용학 차례 T9 개요 새로운언어 (LDB) 추가 T9 주요구조체 / 주요함수 Automata 개요 Automata 주요함수 추후세미나계획 질의응답및토의 T9 ( 2 / 30 ) T9 개요 일반적으로 cat 이라는단어를쓸려면... 기존모드 (multitap) 2,2,2, 2,8 ( 총 6번의입력
More information4장.문장
문장 1 배정문 혼합문 제어문 조건문반복문분기문 표준입출력 입출력 형식화된출력 [2/33] ANSI C 언어와유사 문장의종류 [3/33] 값을변수에저장하는데사용 형태 : < 변수 > = < 식 > ; remainder = dividend % divisor; i = j = k = 0; x *= y; 형변환 광역화 (widening) 형변환 : 컴파일러에의해자동적으로변환
More information쉽게 풀어쓴 C 프로그래밍
누구나즐기는 C 언어콘서트 제 5 장조건문 이번장에서학습할내용 조건문이란? if 문 if, else 문 중첩 if 문 switch 문 goto 문 이제까지는문장들이순차적으로실행된다고하였다. 하지만필요에따라서조건이만족되면문장의실행순서를변경할수있는기능이제공된다. 조건문 조건에따라서여러개의실행경로가운데하나를선택 문장이실행되는순서에영향을주는문장 조건에따라서여러개의같은처리를반복
More information구조체정의 자료형 (data types) 기본자료형 (primitive data types) : char, int, float 등과같이 C 언어에서제공하는자료형. 사용자정의자료형 (user-defined data types) : 다양한자료형을묶어서목적에따라새로운자료형을
(structures) 구조체정의 구조체선언및초기화 구조체배열 구조체포인터 구조체배열과포인터 구조체와함수 중첩된구조체 구조체동적할당 공용체 (union) 1 구조체정의 자료형 (data types) 기본자료형 (primitive data types) : char, int, float 등과같이 C 언어에서제공하는자료형. 사용자정의자료형 (user-defined
More informationVisual Basic 반복문
학습목표 반복문 For Next문, For Each Next문 Do Loop문, While End While문 구구단작성기로익히는반복문 2 5.1 반복문 5.2 구구단작성기로익히는반복문 3 반복문 주어진조건이만족하는동안또는주어진조건이만족할때까지일정구간의실행문을반복하기위해사용 For Next For Each Next Do Loop While Wend 4 For
More information윈도우즈프로그래밍(1)
제어문 (2) For~Next 문 윈도우즈프로그래밍 (1) ( 신흥대학교컴퓨터정보계열 ) 2/17 Contents 학습목표 프로그램에서주어진특정문장을부분을일정횟수만큼반복해서실행하는문장으로 For~Next 문등의구조를이해하고활용할수있다. 내용 For~Next 문 다중 For 문 3/17 제어문 - FOR 문 반복문 : 프로그램에서주어진특정문장들을일정한횟수만큼반복해서실행하는문장
More informationMicrosoft PowerPoint - 08-C-App-19-Quick-Preprocessor
19. 전처리와분할컴파일 순천향대학교컴퓨터학부이상정 1 학습내용 전처리명령어 #include #define 기호상수 const 분할컴파일 순천향대학교컴퓨터학부이상정 2 전처리과정 전처리 (preprocessor) 전처리명령어는 # 기호로시작 #incldue #define 순천향대학교컴퓨터학부이상정 3 #include (1) 지정된파일을프로그램에삽입 꺽쇠괄호는포함할파일을컴파일러에설정되어있는특정디렉토리에서검색
More information슬라이드 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 informationMicrosoft 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 informationA Dynamic Grid Services Deployment Mechanism for On-Demand Resource Provisioning
C Programming Practice (I) Contents 변수와상수 블록과변수의범위 수식과연산자 제어문과반복문 문자와문자열 배열, 포인터, 메모리관리 구조체 디버거 (gdb) 사용법 2/17 Reference The C Programming language, Brian W. Kernighan, Dennis M. Ritchie, Prentice-Hall
More informationK&R2 Reference Manual 번역본
typewriter structunion struct union if-else if if else if if else if if if if else else ; auto register static extern typedef void char short int long float double signed unsigned const volatile { } struct
More informationMySQL-.. 1
MySQL- 기초 1 Jinseog Kim Dongguk University jinseog.kim@gmail.com 2017-08-25 Jinseog Kim Dongguk University jinseog.kim@gmail.com MySQL-기초 1 2017-08-25 1 / 18 SQL의 기초 SQL은 아래의 용도로 구성됨 데이터정의 언어(Data definition
More informationMicrosoft PowerPoint - chap-05.pptx
쉽게풀어쓴 C 언어 Express 제 5 장수식과연산자 컴퓨터프로그래밍기초 이번장에서학습할내용 * 수식과연산자란? * 대입연산 * 산술연산 * 논리연산 * 관계연산 * 우선순위와결합법칙 이번장에서는수식과연산자를살벼봅니다. 컴퓨터프로그래밍기초 2 수식 수식 (expression) x + y x*x + 5*x + 6 (principal * interest_rate
More information쉽게 풀어쓴 C 프로그래밍
제 3 장함수와문자열 1. 함수의기본적인개념을이해한다. 2. 인수와매개변수의개념을이해한다. 3. 함수의인수전달방법 2가지를이해한다 4. 중복함수를이해한다. 5. 디폴트매개변수를이해한다. 6. 문자열의구성을이해한다. 7. string 클래스의사용법을익힌다. 이번장에서만들어볼프로그램 함수란? 함수선언 함수호출 예제 #include using
More informationMATLAB for C/C++ Programmers
오늘강의내용 (2014/01/17) 파일입출력 MATLAB에서계산한데이터를바이너리파일또는텍스트파일의형태로디스크에저장 디스크에저장된파일을 MATLAB workspace 상으로읽어오기 1 파일입출력 2 MATLAB File I/O 여러종류의함수제공 이진화된파일 (binary file) 의읽고쓰기 형식화된파일 (formatted ASCII) 의읽고쓰기 파일입출력함수
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쉽게 배우는 알고리즘 강의노트
쉽게배우는알고리즘 장. 정렬 Sorting http://www.hanbit.co.kr 장. 정렬 Sorting 은유, 그것은정신적상호연관성의피륙을짜는방법이다. 은유는살아있다는것의바탕이다. - 그레고리베이트슨 - 2 - 학습목표 기본정렬알고리즘을이해한다. 정렬을귀납적관점에서볼수있도록한다. 1 장과 2 장에서배운기법을사용해각정렬의수행시간을분석할수있도록한다. 비교정렬의한계를이해하고,
More information<4D6963726F736F667420506F776572506F696E74202D204D41544C4142B0ADC0C7B7CF28B9E8C6F7BFEB295F3031C0E55FBDC3C0DBC7CFB1E22E707074205BC8A3C8AF20B8F0B5E55D>
MATLAB MATLAB 개요와 응용 1장 MATLAB 시작하기 10 5 0 황철호 -5-10 30 20 10 0 0 5 10 15 20 25 MATLAB 시작하기 이장의내용 MATLAB의여러창(window)들의 특성과 목적 기술 스칼라의 산술연산 및 기본 수학함수의 사용. 스칼라 변수들(할당 연산자)의 정의 및 변수들의 사용 방법 스크립트(script) 파일에
More informationMicrosoft PowerPoint - lect03.ppt [호환 모드]
지난시간에배운것 강의 3. MATLAB 기초 - 두번째 DoeHoon Lee, Ph.D dohoon@pnu.edu Visual Computing & Biomedical Computing Lab(VisBiC) School of Computer Science & Engineering Pusan National University http://visbic.cse.pusan.ac.kr/
More information<C6F7C6AEB6F5B1B3C0E72E687770>
1-1. 포트란 언어의 역사 1 1-2. 포트란 언어의 실행 단계 1 1-3. 문제해결의 순서 2 1-4. Overview of Fortran 2 1-5. Use of Columns in Fortran 3 1-6. INTEGER, REAL, and CHARACTER Data Types 4 1-7. Arithmetic Expressions 4 1-8. 포트란에서의
More information1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문
1 장 C 언어복습 표준입출력배열포인터배열과포인터함수 const와포인터구조체컴파일러사용방법 C++ 프로그래밍입문 1. 표준입출력 표준입출력 입력 : 키보드, scanf 함수 출력 : 모니터, printf 함수문제 : 정수값 2개를입력받고두값사이의값들을더하여출력하라. #include int main(void) int Num1, Num2; int
More informationMATLAB for C/C++ Programmers
파일입출력 1 MATLAB File I/O 여러종류의함수제공 이진화된파일 (binary file) 의읽고쓰기 형식화된파일 (formatted ASCII) 의읽고쓰기 파일입출력함수 save, load 함수 MATLAB 에서사용하는데이터타입을저장및불러오기 dlmread, dlmwrite 사용자가지정한구분자 (delimiter) 형태로텍스트파일에저장 cvsread,
More informationJAVA PROGRAMMING 실습 02. 표준 입출력
자바의기본구조? class HelloJava{ public static void main(string argv[]){ system.out.println( hello,java ~ ){ } } # 하나하나뜯어살펴봅시다! public class HelloJava{ 클래스정의 public static void main(string[] args){ System.out.println(
More information