이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
코드에서 섹션 만들고 실행하기
R2021b 이후. 코드 섹션(R2021a) 및 라이브 스크립트에서 섹션 실행하기(R2021a)를 대체합니다.
MATLAB® 코드 파일에는 종종 다수의 명령과 많은 줄의 텍스트가 들어 있습니다. 일반적으로 코드 및 관련 텍스트를 조각으로 나눠 한 번에 코드의 한 부분씩 집중해서 작업합니다. 문서를 더 쉽게 관리하고 탐색하려면 파일을 섹션으로 나눕니다. 이렇게 하면 개별 섹션에서 코드를 실행하고 필요에 따라 섹션 간에 이동할 수 있습니다.
파일을 섹션으로 나누기
섹션을 생성하려면 편집기 또는 라이브 편집기 탭으로 이동하여 섹션 섹션에서 섹션 나누기 버튼을 클릭하십시오. 새로운 섹션을 시작하려는 라인의 시작 부분에 두 개의 퍼센트 기호(%%
)를 입력해도 됩니다. 새 섹션은 파란색 테두리로 강조 표시되어 선택되었음을 나타냅니다. 코드 파일에 섹션이 하나만 있는 경우 섹션이 항상 선택된 상태이므로 강조 표시되지 않습니다.
편집기에서 섹션은 두 개의 퍼센트 기호(%%
)로 시작합니다. %%
와 같은 라인에 있는 텍스트를 섹션 제목이라고 합니다. 섹션 제목을 포함하는 것은 선택 사항이지만, 코드를 퍼블리시했을 때 파일의 가독성을 향상시켜서 소제목으로 표시됩니다.
라이브 편집기에서 섹션에는 코드, 텍스트, 출력값 등이 들어갈 수 있습니다. 섹션을 만들거나 기존 섹션을 수정하면 섹션 왼쪽에 있는 막대에 세로 줄무늬 효과가 표시됩니다. 이 줄무늬 효과는 해당 섹션이 미실행 상태임을 나타냅니다. 미실행 섹션은 아직 실행되지 않은 섹션이거나 마지막 실행 이후 수정된 섹션입니다.
섹션 삭제하기
편집기에서 섹션 나누기를 삭제하려면 섹션의 시작 부분에 있는 두 개의 퍼센트 기호(%%
)를 삭제하십시오. 라이브 편집기에서 섹션 나누기를 삭제하려면 나누어진 섹션 바로 다음 라인의 시작 부분에 커서를 놓고 Backspace를 누르십시오. 또는, 섹션 나누기 바로 앞 라인의 끝에 커서를 놓고 Delete 키를 눌러도 됩니다.
참고
MATLAB에서 추가한 섹션 나누기는 제거할 수 없습니다. MATLAB에서 섹션 나누기를 추가하는 시점에 대한 자세한 내용은 함수 내에서 섹션의 동작 항목과 루프와 조건문에서 섹션의 동작 항목을 참조하십시오.
섹션 여백 최소화하기
편집기에서 코드 편집에 사용할 수 있는 공간을 최대화하기 위해 섹션 실행, 여기까지 실행 및 코드 접기의 여백을 숨길 수 있습니다. 그러면 코드 왼쪽의 회색 영역이 최소화됩니다. 하나 이상의 여백을 숨기려면 코드 왼쪽의 회색 영역을 마우스 오른쪽 버튼으로 클릭하고 실행 섹션 여백 표시, 여기까지 실행 여백 표시 및/또는 코드 접기 여백 표시 옵션을 선택 해제하십시오.
섹션 실행하기
각 섹션을 개별적으로 실행하거나 파일의 모든 코드를 한 번에 실행하여 코드 파일을 실행할 수 있습니다. 섹션을 개별적으로 실행하려면 섹션에 필요한 모든 값이 포함되어 있거나 MATLAB 작업 공간에 값이 존재해야 합니다. 개별 섹션을 실행할 때 MATLAB은 파일을 저장하지 않으며 파일은 검색 경로에 없어도 됩니다.
다음 표에서는 코드를 실행하는 여러 가지 방법을 설명합니다.
작업 | 지침 |
---|---|
파일에 있는 모든 코드를 실행합니다. | 편집기 탭이나 라이브 편집기 탭의 실행 섹션에서 |
선택된 섹션에서 코드를 실행합니다. | 편집기 탭이나 라이브 편집기 탭의 섹션 섹션에서 라이브 편집기에서 섹션 왼쪽에 있는 파란색 표시줄을 클릭해도 됩니다. |
선택된 섹션에서 코드를 실행한 후 다음 섹션으로 이동합니다. | 편집기 탭이나 라이브 편집기 탭의 섹션 섹션에서 |
선택된 섹션에서 코드를 실행한 다음 선택된 섹션 뒤에 있는 코드를 모두 실행합니다. | 편집기 탭이나 라이브 편집기 탭의 섹션 섹션에서 |
코드의 특정 라인까지 실행하고 일시 중지합니다. | 라인 왼쪽에 있는 편집기에서 자세한 내용은 MATLAB 코드 파일 디버그하기 항목을 참조하십시오. |
섹션에서 값 증분하기
변경 사항이 발생할 때마다 섹션을 다시 실행하여 섹션 내의 숫자형 값을 증분할 수 있습니다. 이렇게 하면 코드를 세부 조정하고 시험해 볼 수 있습니다.
섹션 내에서 숫자형 값을 증가시키려면 라이브 편집기의 컨트롤을 사용하십시오. 예를 들어, 다음 코드는 변수 x의 계승을 계산합니다.
x = 5; y = factorial(x)
y = 120
5
를 숫자 슬라이더로 바꾸십시오. 기본적으로 MATLAB은 슬라이더의 값이 변경되면 현재 섹션을 다시 실행합니다.자세한 내용은 라이브 스크립트에 대화형 방식 컨트롤 추가하기 항목을 참조하십시오.
섹션 간 이동하기
한 파일 내에서 섹션의 코드를 실행하지 않고 섹션 간에 이동할 수 있습니다. 이 방법을 사용하면 한 파일 내에서 여러 섹션 간에 빠르고 쉽게 이동할 수 있습니다. 예를 들어, 큰 파일에서 특정 코드를 찾기 위해 이 방법으로 이동할 수도 있습니다.
작업 | 지침 |
---|---|
특정 섹션으로 이동합니다. | 편집기 탭이나 라이브 편집기 탭의 탐색 섹션에서 |
이전 섹션으로 이동합니다. | 편집기 탭이나 라이브 편집기 탭의 탐색 섹션에서 |
다음 섹션으로 이동합니다. | 편집기 탭이나 라이브 편집기 탭의 탐색 섹션에서 |
함수 내에서 섹션의 동작
편집기에서 함수 내에 섹션 나누기를 추가하면 MATLAB은 함수 선언과 함수 end 문에 섹션 나누기를 삽입합니다. 함수를 end
문으로 끝내지 않으면 MATLAB은 이 함수가 다음 함수의 시작 직전에 끝나는 것처럼 동작합니다.
라이브 편집기에서는 함수 내에 섹션 나누기를 추가할 수 없습니다. 로컬 함수 내에서는 섹션이 지원되지 않습니다. 라이브 스크립트에 로컬 함수를 추가하면 MATLAB이 첫 번째 로컬 함수 정의 앞에 섹션 나누기를 추가하고 그 뒤의 섹션 나누기는 모두 제거합니다. 라이브 스크립트에서 개별 섹션을 실행할 때는 로컬 함수 정의 앞에 있는 섹션만 실행할 수 있습니다.
루프와 조건문에서 섹션의 동작
편집기에서 루프 또는 조건문(예: if
문 또는 for
루프) 내에 섹션 나누기를 추가하면 MATLAB은 명령문의 시작과 끝을 포함하는 라인에 섹션 나누기를 추가합니다(이러한 라인에 이미 섹션 나누기가 포함되지 않은 경우). 루프나 조건문 내의 섹션은 나머지 코드에 있는 섹션과 독립되어 있으며 나머지 코드에 있는 섹션 내부에 중첩됩니다. 중첩된 루프나 조건문 내의 섹션도 중첩됩니다.
예를 들어, 이 코드는 10개의 요소를 가진 벡터를 사전할당한 다음 9개 값을 계산합니다. 계산된 값이 짝수이면 MATLAB은 계산된 값에 1을 더합니다.
x = ones(1,10); for n = 2:10 x(n) = 2 * x(n - 1); if rem(x(n), 2) == 0 x(n) = x(n) + 1; end end
3번 라인(for
루프 내)에 섹션 나누기를 추가하면 MATLAB은 9번 라인(for
루프의 end 문)에 섹션 나누기를 추가합니다. 6번 라인(if
문 내)에 섹션 나누기를 추가하면 MATLAB은 8번 라인(if
문의 end 문)에 섹션 나누기를 추가하여 세 개 수준으로 중첩된 섹션이 생깁니다.
가장 바깥쪽 중첩 수준에서는 한 섹션이 전체 파일로 확장됩니다.
두 번째 중첩 수준에서는 한 섹션이
for
루프 내에 존재합니다.세 번째 중첩 수준에서는 한 섹션이
if
문 내에 존재합니다.