奇迹觉醒魔剑士奥义怎么选:tag 標簽: 程序

相關帖子

版塊 作者 回復/查看 最后發表
MTLAB里面關于pca人臉識別的程序應用 attachment MATLAB 代碼生成 20062594 2012-1-27 32 13905 985810864 2019-4-23 11:28
程序問題 attachment 《MATLAB統計分析與應用:40個案例分析》含第二版 fdw001 2012-2-1 3 3374 逆流133 2014-4-23 22:27
幾行程序,期待解答。 MATLAB 基礎討論 coolistone 2012-1-25 16 4093 zhongnanshan 2013-8-5 13:46
自己編了個小程序! MATLAB 基礎討論 gfzheng166 2012-1-26 29 6171 heart魚兒入水 2018-12-13 09:26
求解二階微分方程組的程序 MATLAB 數學、統計與優化 yjscsu 2012-1-27 2 3648 shnmatlab 2012-7-17 15:19
MATLAB圖片剪裁 將一幅圖片中的多個物體用程序智能裁剪出來 attach_img MATLAB 圖像處理與計算機視覺 pjb438458200 2012-1-30 9 6351 1234560001 2018-12-2 19:09
請看下這幾句程序(關于列向量組成矩陣),謝謝。 MATLAB 基礎討論 error_code 2012-1-31 6 6587 半天 2012-2-1 10:34
在新建的m文件中怎么調用已編好的BP神經網絡 《MATLAB 神經網絡30個案例分析》 alexkoko 2012-1-31 1 3245 史峰 2012-2-9 11:58
matlab程序有些不是很明白的地方可不可以請教的??? 《圖論算法及其 MATLAB 實現》 Mc林少 2012-1-31 4 3261 berryhaw 2012-3-21 16:46
vs2010報錯:應用的程序集“MWArray.dll”針對其他處理器 attach_img MATLAB 應用發布 混合編程 nimingzhe2008 2012-1-31 13 14829 子龍 2015-4-9 10:19
RGB轉HSI及HSI轉RGB attachment MATLAB 圖像處理與計算機視覺 紫色_purple 2012-2-1 4 3913 雨紛霏 2014-4-29 21:01
跪求用matlab求解天然氣熱物性的程序??! MATLAB 數學、統計與優化 yimpulse 2012-2-1 0 2497 yimpulse 2012-2-1 16:04
需要反復調用一個程序多次,如果提高速度 MATLAB 數學、統計與優化 yanghong612 2012-2-2 2 2279 ydlcsu 2012-2-2 14:47
請求幫助解決問題,matlab程序遺傳算法,謝謝 MATLAB 數學、統計與優化 wangzai305 2012-2-3 2 3302 簡簡單單123 2012-3-27 14:51
關于DSP直接調用MATLAB程序 MATLAB 控制系統 myzhongda 2012-2-4 0 4 myzhongda 2012-2-4 08:15
洛倫茲程序 attach_img MATLAB 基礎討論 warden123 2012-2-4 22 9704 1259760695 2017-9-19 09:13
關于13章GA程序不能運行的問題的解決辦法 《MATLAB 神經網絡30個案例分析》 MOSTWANTED 2012-2-5 1 3330 sxiaodong 2013-3-22 16:38
求高手幫忙找程序中的錯誤 MATLAB 基礎討論 cui 2012-2-6 1 1898 stellari 2012-2-7 05:26
程序報錯,MATLAB菜鳥求教結構體調用問題 MATLAB 基礎討論 zhangyangyi1986 2012-2-7 4 5783 stellari 2012-2-8 04:40
模擬退火法MATLAB程序 attachment MATLAB/Simulink 資源共享 (File Exchange) lancelot13 2012-2-7 37 12042 lesaishine 2017-6-6 01:23

相關日志

分享 matlab最基礎教程(六):編程習慣
熱度 20 halleyhit 2017-4-16 13:57
前言:matlab的基本使用方法差不多介紹完了,確定問題類型(數值/符號),編程(函數/腳本)并運行即可。但具體編程過程中,良好的習慣非常重要,一方面便于調試,另一方面便于代碼維護和升級。 1.注釋 matlab提供兩種注釋,分別是%%和%。%%一般獨占一行,用來分段,兩個%%之間的內容稱為一段,在程序調試時,可以設置為運行一段代碼后暫停,以便查看一段代碼的運行結果。使用范例如下: %%賦值 賦值代碼 %%第一階段計算 第一階段代碼 %%第二階段計算 第二階段代碼 %%輸出 輸出階段代碼 這樣在調試時,若設置分段運行,則運行完賦值代碼后,程序自動進入調試模式,此時可以在workspace里看到賦值段的運行結果,以便確認這段代碼是否正確。 %常用于一般代碼的末尾,用來說明這一行代碼的含義,例如“g=9.8%重力加速度賦值”,這樣之后調試時,可以快速找到這一行,并修改相應代碼。需要注意的是,%僅在行內,對其后的內容有效,遇到回車換行后失效。此外, 無論是%%還是%,注釋內容會顯示為綠色。 2.分行 無論matlab還是其他程序語言,也無論函數還是腳本,依次逐行運行是基本特征,因此我們一般不希望一行的內容太多,因為這樣不方便差錯。但如果一定要使用這樣一行很長的代碼,matlab提供了一種分行的方式。使用方法是在代碼中輸入三個.,然后回車。這樣產生的代碼比如: a=... 1 這行代碼和a=1完全一樣。需要指出的是, 這種分行方式僅在輸入時有效,在實際運行中,matlab仍然認為這是一行代碼。這種分行的另一種用法是用在矩陣賦值中,比如 a= 這樣可以很明顯看出a是2*2矩陣。 3.分號 matlab的每一行代碼,一般都會在command window里顯示運行結果,如果不想顯示,可以在代碼后面寫一個分號;,這樣就可以不顯示該行的運行結果。需要注意的是:其一,寫不寫分號不影響程序的運行和結果;其二,顯示運行結果是需要占用計算時間的,因此一般的語句都會寫上分號;其三,if、for等流程控制語句,這一行不加分號。 4.先定義再使用 雖然matlab中可以直接使用a(2,2)=1這樣的語句,而無需先定義a是多大維度的矩陣,但這樣可能造成運行變慢。先定義再使用依然是個好習慣,尤其是賦值語句中有講過zeros和ones這樣的語句,先把矩陣的維度定義好,再逐個元素賦值或者局部賦值,有助提高運行效率。 5.特殊運算代替循環 matlab相較于C等語言的強大之處在于用特殊運算代替循環,比如a和b是同緯度矩陣,要將他們對應的元素相乘。在常用運算中,我們講過,在matlab中可以用點乘.*。在C語言中則需要一個for循環,遍歷a和b的每個元素,相乘后賦值給結果矩陣。當然,matlab中也可以用for循環來實現這個操作,但相比特殊運算,for循環的效率實在是差太多。特殊運算代替循環也成為了提高運行效率的主要方法,當然,如果是習慣于C語言的初學者也可以無視這一節。
個人分類: 新分類|2097 次閱讀|2 個評論
分享 stellari的MATLAB偵探工坊——如何排除程序中的錯誤(一)
熱度 13 stellari 2013-4-28 13:40
除錯是每個程序員都會遇到的問題:基本上沒有人能保證他的程序寫完能夠馬上正常運行的。你通?;嵊齙攪街執砦螅?--------------------------------------------------------------------------------------------------------------------------------------- 1、 語法錯誤 ;如果某句代碼不符合MATLAB的編碼規范,MATLAB會自動終止程序的運行,并以紅字提示錯誤的出處。 2、 邏輯錯誤 ;代碼 均符合MATLAB的規范,程序能夠正常執行完畢,但是結果不正確。 ----------------------------------------------------------------------------------------------------------------------------------------- 很多同學遇到程序錯誤后,就不知該如何解決了。其實,檢查代碼中的錯誤,和偵探的工作是一樣的:你的程序中有一個 兇手 ,它導致了 案件 的發生(程序出錯)。你需要用 盤查 和 邏輯推理 將其找出。 我們今天先討論第一種錯誤:語法錯誤。 -------------------------------------------------------------------------------------- 閱讀卷宗 ——檢查錯誤信息 當 命案 (錯誤)發生時,MATLAB會立即 報案 (給出錯誤信息)。這個信息看起來是這個樣子的: In an assignment A(I) = B, the number of elements in B and I must be the same. Error in data2 (line 3) a( ) = b - 4; 這個錯誤信息中給出了三條命案現場的關鍵信息: 案件概述 : In an assignment A(I) = B, the number of elements in B and I must be the same; 案件位置 : data2.m的第3行; 嫌疑犯 : 在“ 案件位置”發現的代碼,即 a( ) = b - 4; 那么,作為偵探,你應第一時間閱讀案件概述。這里我不得不強調學習英語的重要性,至少你要能看得懂案件概述的意思,比如上述錯誤信息的意思是: 在A(I) = B這樣的表達形式中,B中的元素個數和I中的元素個數必須相同。 其實看到這里,這個錯誤已經一目了然了。這句代碼確實是A(I) = B的形式。其中A是a,I是 ,而B是b -4。 出了這個錯誤,說明 b-4的元素個數和 的元素個數不同=》因為 的元素個數為2 所以b-4的元素個數不為2=》因為b-4和b的元素個數相同 所以b的元素個數不為2。 所以,這里的兇手很明顯就是b。這是最簡單的案件之一,只有 一個嫌疑犯 ,所以直接看卷宗就可以找出兇手了。但是,有的時候會有 多個嫌疑犯 ,兇手就不是那么明顯了。比如: Subscript indices must either be real positive integers or logicals. Error in test11 (line 5) total(i) = sum(b(i,:)); 這里的錯誤是說:下標必須是正整數或是邏輯變量。那么我們就要看看,這句話里面哪個部分用到了下標?下標的形式是A(X),符合這個形式的地方有兩處: b(i,:) total(i) 那么,他們兩個就是比較的大嫌疑人。 但是,除此之外,還有一個嫌疑人,就是 sum(...) 這句話也符合下標的形式,但是sum是系統函數,所以括號里的內容應該被當成函數參數,而不是下標,所以,它看起來并不像是嫌疑人。但是, 只要有作案可能的(在這里就是符合下標的調用形式的),我們都有要把它列為嫌疑人 。 在命案現場,我們找到了三位嫌疑人b(i,:), total(i)和sum(b(i,:)。這時候,單看卷宗就無法判斷真兇是誰了。所以我們需要進行下一步—— 勘察現場 ,來實地拜訪這三位嫌疑人。 (待續)
個人分類: stellari的MATLAB偵探工坊|3493 次閱讀|4 個評論
返回頂部