解決辦法:自己調試一下程序,把下標為 0 或者負數的地方修正。$ ]$ m8 A. T9 c$ i8 W
2.Undefined function or variable "U"
中文解釋:函數或變量 U 沒有定義 .出錯原因及解決辦法:可能變量名輸入錯誤,仔細檢查 3.Matrix dimensions must agree 中文解釋:矩陣的維數必須一致出錯原因:這是由于運算符(= + - / * 等)兩邊的運算對象維數不匹配造成的,典型的出錯原因是錯用了矩陣運算符。matlab 通過“.”來區分矩陣運算和元素運算。 解決辦法:自己調試一下程序,保證運算符兩邊的運算對象維數一致。
4.Function definitions are not permitted at the PRompt or in scripts
中文解釋:不能在命令窗口或者腳本文件中定義函數
出錯原因:一旦在命令窗口寫 function c = myPlus(a,b),此錯誤就會出現,因為函數只能定義在 m 文件中。關于腳本文件和 m 文件的區別請查閱 matlab 基礎書。簡言之: 1) 如果你寫成 function 的形式,那么必須寫在 m 文件中,且以 function 開頭(即 function 語句前不能包含其他語句,所有語句必須放在 function 中,當然,function 的定義可以有多個,各 function 之間是并列關系,不能嵌套); 2) 如果你寫成腳本的形式,則既可以寫在命令窗口中,也可以寫在 m 文件中,但兩者均不能包含 function 語句(即不能進行函數的定義) 解決辦法:新建一個 m 文件,然后再進行函數的定義5.One or more output arguments not assigned during call to '...'
中文解釋:在調用...函數過程中,一個或多個輸出變量沒有被賦值
出錯原因:函數如果帶有輸出變量,則每個輸出在返回的時候都必須被賦值。容易出現這個錯誤的兩個地方是:在部分條件判斷語句(如 if )中沒有考慮到輸出變量的返回值。 在循環迭代過程中部分變量的維數發生了變化解決辦法:調試程序,仔細查看函數返回時各輸出變量的值。更好的方法是:在條件判斷或者執行循環之前對所使用的變量賦初值。
6.??? Index exceeds matrix dimensions
中文解釋:索引超出矩陣的范圍 出錯原因:在引用矩陣元素的時候,索引值超出矩陣應有的范圍 解決辦法:檢查所定義數組的維數,和引用的范圍。 7.In an assignment A(I) = B, the number of elements in B and I must be the same require.async(['wkcommon:widget/ui/lib/sio/sio.js'], function(sio) { var url = 'https://cpro.baidustatic.com/cpro/ui/c.js'; sio.callByBrowser( url, function () { BAIDU_CLB_fillSlotAsync('u2845605','cpro_u2845605'); } ); }); void function(e,t){for(var n=t.getElementsByTagName("img"),a=+new Date,i=[],o=function(){this.removeEventListener&&this.removeEventListener("load",o,!1),i.push({img:this,time:+new Date})},s=0;s< n.length;s++)!function(){var e=n[s];e.addEventListener?!e.complete&&e.addEventListener("load",o,!1):e.attachEvent&&e.attachEvent("onreadystatechange",function(){"complete"==e.readyState&&o.call(e,o)})}();alog("speed.set",{fsItems:i,fs:a})}(window,document);中文解釋:在賦值語句 A(I) = B 中,B 和 I 的元素個數必須相同 出錯原因:I 和 B 的維數、大小不一樣。這正如“把 5 個水果放到 6 個籃子”、或者“把 6 個水果放到 5 個籃子”,均無法實現 解決辦法:自己設置斷點調試一下,看看 I 和 B 的維數、大小是否相同,不同的話就要修改成兩者一致8 Subscripted assignment dimension mismatch
中文解釋:下標賦值尺寸不匹配
出錯原因:一般是等號兩邊格式不一樣,如右邊是數組左邊是數字解決辦法:看看等號左右兩邊的數據類型,尤其是經過運算后的數據類型一定要相同。
9 Attempted to access (109,3); index must be a positive integer or logical.
中文解釋:索引必須是正整數或邏輯值
出錯原因:一般是由于浮點計算時間上的浮點誤差造成的,比如t/dt不一定是正整數,會存在很小的誤差。 解決辦法:可以采用round(a):四舍五入,比如:round(pi)=3;ceil(a):向上取整,比如:ceil(pi)=4;floor(a):向下取整,比如:floor(pi)=310.設A為矩陣,用size(A,i)求矩陣的行數和列數。其中i=1或2.行數用1,列數用2
11.
從函數關系看,使用二次擬合為宜 % 原始數據 x=[0.4,0.6,0.8,1.0,1.2,1.4]; y=[0.15,0.21,0.39,0.55,0.78,1.07]; % 二次擬合 p=polyfit(x,y,2) % 繪圖比較 plot(x,y,'.-',x,polyval(p,x),'r:o') 12 line([.3 .7],[.4 .9],[1 1],'Marker','*','LineStyle','-') line([.3 .7],[.4 .9],[1 1],'Marker','.','LineStyle','-') 13 A=[1,2,3,4,5;2,3,4,6,2;2,3,2,3,4]; for i=1:3 A(i,:)=A(i,:)-mean(A(i,:))*ones end 14新聞熱點
疑難解答