matlab技能1——.m文件的編寫與調(diào)用

.m文件是指用matlab編寫的可以通過matlab運(yùn)行的文件。
它分為兩種類型

  • 命令文件:沒有參數(shù)和返回值,僅僅是內(nèi)部的操作
  • 函數(shù)文件:有輸入?yún)?shù)和返回值,與我們外界進(jìn)行交互

這里主要介紹函數(shù)文件的編寫方式,因?yàn)槲翌A(yù)感到,數(shù)學(xué)建模的時(shí)候一定會(huì)有函數(shù)文件的編寫,提前預(yù)警。

技能學(xué)習(xí)

一.M文件通常的組成部分:

  • 1 函數(shù)定義行(必須的)

函數(shù)M文件的第一行用關(guān)鍵字“function”把M文件定義為一個(gè)函數(shù),并指定它的名字,并且與文件名必須相同,同時(shí)定義了函數(shù)的輸入和輸入?yún)?shù)。輸入?yún)?shù)的定義用小括號(hào)(),如果有多個(gè)輸入?yún)?shù)則用逗號(hào)分隔;輸出參數(shù)的定義用中括號(hào)[],如果有多個(gè)輸出參數(shù)則用逗號(hào)分隔。

  • 2 H1行

所謂H1行指幫助文本的第一行,它緊跟在定義行之后并以“%”符號(hào)開頭,用于概括說明函數(shù)名和函數(shù)的功能。在命令窗口用 lookfor 命令時(shí)將顯示所尋求函數(shù)的H1行。

  • 3 函數(shù)幫助文本

幫助文本指位于H1行之后函數(shù)體之前的說明文本,它同樣以“%”符號(hào)開頭,一般用來比較詳細(xì)地介紹函數(shù)的功能和用法。在命令窗口用help命令時(shí)將顯示函數(shù)的H1行和所有幫助文本。

  • 4 函數(shù)體(必須的)

是函數(shù)的主體部分,包括進(jìn)行運(yùn)行和賦值操作的所有MATLAB程序代碼,其中可以有流程控制、輸入輸出、計(jì)算、賦值、注釋以及函數(shù)調(diào)用等操作。

  • 5 注釋

除了函數(shù)開始獨(dú)立的幫助文本外,還可以在函數(shù)體中添加對(duì)語(yǔ)句的注釋。注釋必須以“%”符號(hào)開頭,MATLAB在編譯執(zhí)行M文件時(shí)把每一行中“%”后面的全部?jī)?nèi)容作為注釋不進(jìn)行編譯。

二.函數(shù)書寫樣例:判斷是否為整數(shù)

%用于判斷輸入的值是否為整數(shù),如果是則返回值為1,否則返回值為0
%函數(shù)方法聲明
function[isinteger] = checkInteger(x);
%H1 check if the x is int

%函數(shù)體
if x==fix(x)
    isinteger=1;
else 
    isinteger=0;
end

三.函數(shù)的調(diào)用

直接在命令行中輸入方法名,這是上面的函數(shù)的調(diào)用方式

>> checkInteger(5)

ans =

     1

當(dāng)然,對(duì)上面的函數(shù)進(jìn)行修改,使得他有兩個(gè)返回值

%用于判斷輸入的值是否為整數(shù),如果是則返回值為1,否則返回值為0
%函數(shù)方法聲明
function[isinteger,another] = checkInteger(x);
%H1 check if the x is int

%函數(shù)體
if x==fix(x)
    isinteger=1;
    another=1;
else 
    isinteger=0;
    another=0;
end

函數(shù)調(diào)用

>> [a,b]=checkInteger(6)

a =

     1


b =

     1

.m文件部分暫時(shí)整理這些,后續(xù)會(huì)繼續(xù)補(bǔ)充。加油~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容