반응형
루프와 조건문
if, elseif, else |
조건이 true인 경우 명령문 실행 |
switch, case, otherwise | 여러 개의 명령문 그룹 중 하나 실행 |
for | 지정된 횟수를 반복하는 for 루프 |
while | 조건이 true이면 반복하는 while 루프 |
try, catch | 명령문을 실행하여 결과 오류 포착 |
break | for 루프 또는 while 루프 실행 종료 |
return | 컨트롤을 호출 스크립트 또는 호출 함수에 반환 |
continue | for 루프나 while 루프의 다음 반복으로 제어를 전달 |
pause | MATLAB 실행을 일시적으로 중지 |
parfor | 병렬 for 루프 |
end | 코드 블록 종료 또는 마지막 배열 인덱스 표시 |
if, elseif, else
조건이 true인 경우 명령문 실행페이지 내 모두 축소
if expression
statements
elseif expression
statements
else
statements
end
- 배열비교
if any(A > limit)
disp('There is at least one value above the limit.')
else
disp('All values are below the limit.')
end
-문자형벡터비교
reply = input('Would you like to see an echo? (y/n): ','s');
if strcmp(reply,'y')
disp(reply)
end
-if 여러개 실행
x = 10;
minVal = 2;
maxVal = 6;
if (x >= minVal) && (x <= maxVal)
disp('Value within specified range.')
elseif (x > maxVal)
disp('Value exceeds maximum value.')
else
disp('Value is below minimum value.')
end
switch, case, otherwise
여러 개의 명령문 그룹 중 하나 실행
switch switch_expression
case case_expression
statements
case case_expression
statements
...
otherwise
statements
end
-단일값비교하기
n = input('Enter a number: ');
switch n
case -1
disp('negative one')
case 0
disp('zero')
case 1
disp('positive one')
otherwise
disp('other value')
end
반응형
-여러값비교하기
x = [12 64 24];
plottype = 'pie3';
switch plottype
case 'bar'
bar(x)
title('Bar Graph')
case {'pie','pie3'}
pie3(x)
title('Pie Chart')
otherwise
warning('Unexpected plot type. No plot created.')
end
for
지정된 횟수를 반복하는 for 루프
for index = values
statements
end
- 행렬값 할당
s = 10;
H = zeros(s);
for c = 1:s
for r = 1:s
H(r,c) = 1/(r+c-1);
end
end
-값 감소
for v = 1.0:-0.2:0.0
disp(v)
end
-각 행렬에 대해 명령문 반복
for I = eye(4,3)
disp('Current unit vector:')
disp(I)
end
while
조건이 true이면 반복하는 while 루프
while expression
statements
end
- 표현식이 false가 될 때까지 명령문 반복
n = 10;
f = n;
while n > 1
n = n-1;
f = f*n;
end
disp(['n! = ' num2str(f)])
-다음번 루프 반복 위치로 건너뛰기
fid = fopen('magic.m','r');
count = 0;
while ~feof(fid)
line = fgetl(fid);
if isempty(line) || strncmp(line,'%',1) || ~ischar(line)
continue
end
count = count + 1;
end
count
fclose(fid);
- 표현식이 false가 되기전에 루프 종료
limit = 0.8;
s = 0;
while 1
tmp = rand;
if tmp > limit
break
end
s = s + tmp;
end
반응형
'MATLAB' 카테고리의 다른 글
MATLAB 딥러닝을 사용한 컴퓨터 비전 (0) | 2022.02.04 |
---|---|
MATLAB 이미지인식 만들기 (0) | 2022.01.30 |
matlab 완전 기초 주석추가 / 객체지향 (0) | 2022.01.22 |
함수 function (0) | 2022.01.22 |
행렬과 배열 (0) | 2022.01.21 |
댓글