前言
練習(xí)一中的A,M,N是什么趋距?保存的.m又該如何使用?
練習(xí)一中越除,你接觸了基本運(yùn)算的操作节腐,接下來(lái)你將接觸到函數(shù)封裝。在程序中摘盆,為了工程中的可封裝性與重復(fù)性翼雀,這是必要的一步。
如果你有做完第一個(gè)練習(xí)中的習(xí)題孩擂,就已經(jīng)接觸了一部分狼渊,如果沒(méi)有,放輕松肋殴,不會(huì)太難的囤锉。
練習(xí)是學(xué)習(xí)語(yǔ)言的最好途徑。
1.跟練習(xí)一在命令行操作不同护锤,這次新建一個(gè)ex2.m文件官地。
2.輸入時(shí)注意“完全相同”,不過(guò)你也不必完全按照字面意思烙懦。顯示出來(lái)的程序可能不同驱入,重要的是你輸入文本的正確性。
function [result] = ex2(X, y , t)
%
%
%
X = X .^2;
y = y / 2;
u = min(y);
d = min(u');
P = X + d;
result = sum(P);
end
嘗試
1.還記得之前練習(xí)一中的生成矩陣命令嗎,創(chuàng)建三個(gè)變量在命令行窗口作為參數(shù)調(diào)用你剛建立的函數(shù)亏较。就像下面這樣:
ex2(x,y,t)
你應(yīng)該看到的
>>a = magic(2);b = magic(3) ; c = magic(5);
>>ex2(a,b,c)
ans =
18 14
2.理解首行莺褒,[]中為輸出的參數(shù),()為需要輸入的參數(shù)雪情,填補(bǔ)上面%留下來(lái)的空缺遵岩,說(shuō)明該程序的過(guò)程,或者你也可以在每一行上面添加一行注釋?zhuān)f(shuō)明這行的作用巡通。
3.發(fā)現(xiàn)程序中并沒(méi)有使用到變量T嗎尘执?添加一些語(yǔ)句,讓T參與進(jìn)來(lái)宴凉。
如果你忘了練習(xí)一中的一些內(nèi)容誊锭,請(qǐng)耐心回顧完成,在初學(xué)時(shí)的練習(xí)與重復(fù)是必須的
加分習(xí)題
1.修改ex2.m里面的輸入輸出函數(shù)部分弥锄,再次嘗試調(diào)用函數(shù)丧靡,但這次按照你規(guī)定的輸入輸出來(lái)調(diào)用和接收。
2.找個(gè)你想要實(shí)現(xiàn)的計(jì)算過(guò)程籽暇,創(chuàng)建一個(gè)你自己的.m文件温治,嘗試調(diào)用它。
3.嘗試了解變量的不同戒悠,試試在別的程序語(yǔ)言中的字符串罐盔,又或是Matlab/Octave里面特有的元胞數(shù)組類(lèi)型。如果遇到困難了救崔,就開(kāi)始像前一練習(xí)一樣查閱資料。
注意
1.Matlab/Octave里面一切都是矩陣捏顺,所以注意你的程序是否符合關(guān)于進(jìn)行矩陣運(yùn)算的前提條件六孵,如果你并沒(méi)有相關(guān)的線(xiàn)性代數(shù)知識(shí),隨便找一本線(xiàn)性代數(shù)的教材幅骄,瀏覽一遍前三章劫窒。
2.不要在函數(shù)里面定義與輸入變量同名的變量,這樣會(huì)覆蓋掉你輸入的變量拆座,沒(méi)人會(huì)實(shí)現(xiàn)一個(gè)不能通用泛化的算法主巍。