단순계산이 아닌 복잡한 프로그램을 작성할 때는 m파일을 사용한다.
m-file 이라 부르는 이유는 파일의 확장자가 .m 으로 저장되기 때문.
m파일의 예시

m 파일은 스크립트, 함수 두 가지 종류로 구분된다.
1. Script m file
스크립트 파일은 MATLAB 명령창에 입력할 내용을 텍스트 형태로 저장한 것을 m파일이라 한다.
위에서 예시로 든 m파일은 스크립트 m 파일.
m파일의 실행은 m파일이 저장된 폴더가 working folder로 지정된 상황에서만 가능하다.
working folder 지정방법은 아래와 같다.

폴더 찾아보기를 눌러 working folder로 지정할 폴더를 눌러주면 된다.

m파일을 실행하면 m파일의 명령어는 표시되지 않고 스크립트 내에서 출력하고자 하는 결과물만 명령창에 표시됨.(;사용 안 한 줄)
%를 사용해 주석(comment)을 달 수 있다.
실행 시 명령창을 깔끔하게 만들어주기 위해 clc, clear, close 를 문두에 사용하기도 한다.
2. Function m file
'function'이라는 단어로 시작하는 m파일을 지칭하는데 function m file은 내가 원하는 함수를 생성해 working folder 내에서 자유롭게 불러올 수 있다.

기본적인 구성은
function output = functionname(arguments)
%comments (help functionname 입력 시 출력되는 내용)
statements (함수 내에서 실행할 명령어 선언)
output = value; (함수 정의할 때 선언한 변수에 반환값 지정. 이때 세미콜론을 안 붙이면 값이 두 번 출력된다.)
> 세미콜론을 붙이지 않았을 때

> 세미콜론을 붙였을 때

> help 명령어 입력시 출력되는 내용

function m file은 1개 이상의 출력값을 반환할 수 있다.

이때 명령 창에서 출력값의 형식을 맞춰 가져와야 한다.

※ 매트랩 좌측 상단에 표시되는 현재 폴더에 위치한 스크립트 m 파일과 함수 m 파일은 아이콘이 조금 다르다.

'개발 > 매트랩' 카테고리의 다른 글
[매트랩] 일정한 간격으로 벡터 생성하기, 소수점 표시 조정하기 (0) | 2022.12.20 |
---|---|
[매트랩] fzero 로 비선형 함수의 근 구하기 (0) | 2022.05.27 |
[매트랩] 그래프 그리기 : plot 함수, clear, close, clc (0) | 2022.03.29 |
[매트랩] Built-in functions, 소수점 처리, 나머지 (0) | 2022.03.28 |
[매트랩] Array Creation : zeros, ones, colon operator, linspace, logspace (0) | 2022.03.27 |