Main Content

조건문

조건문을 사용하면 런타임에 실행할 코드 블록을 선택할 수 있습니다. 가장 단순한 형태의 조건문은 if 문입니다. 예를 들면 다음과 같습니다.

% Generate a random number
a = randi(100, 1);

% If it is even, divide by 2
if rem(a, 2) == 0
    disp('a is even')
    b = a/2;
end

if 문은 키워드(선택 사항) elseif 또는 else를 사용하여 다른 선택 항목을 포함할 수 있습니다. 예를 들면 다음과 같습니다.

a = randi(100, 1);

if a < 30
    disp('small')
elseif a < 80
    disp('medium')
else
    disp('large')
end

또는, 알고 있는 일련의 값과 같은지 테스트하려는 경우 switch 문을 사용합니다. 예를 들면 다음과 같습니다.

[dayNum, dayString] = weekday(date, 'long', 'en_US');

switch dayString
   case 'Monday'
      disp('Start of the work week')
   case 'Tuesday'
      disp('Day 2')
   case 'Wednesday'
      disp('Day 3')
   case 'Thursday'
      disp('Day 4')
   case 'Friday'
      disp('Last day of the work week')
   otherwise
      disp('Weekend!')
end

ifswitch 모두에 대해 MATLAB®에서는 첫 번째 true 조건에 해당하는 코드를 실행하고 코드 블록을 종료합니다. 각각의 조건문에는 end 키워드가 필요합니다.

알고 있는 이산 값이면서 값의 개수가 많을 때는 일반적으로 switch 문을 사용하는 편이 if 문을 사용하는 것보다 읽기 편합니다. 하지만 switch 값과 case 값 간에 부등식을 테스트할 수는 없습니다. 예를 들어, 다음과 같은 조건 유형은 switch로는 구현할 수 없습니다.

yourNumber = input('Enter a number: ');

if yourNumber < 0
    disp('Negative')
elseif yourNumber > 0
    disp('Positive')
else
    disp('Zero')
end

참고 항목

| | |

외부 웹사이트