導航:首頁 > 編程語言 > 如何用matlab編程

如何用matlab編程

發布時間:2022-10-30 01:32:46

㈠ matlab怎麼用

判斷矩陣一致性檢驗的Matlab源程序代碼
Matlab源程序代碼如下:

clc
clear
disp('請輸入判斷矩陣A')
A=input('A=');
[n,n] = size(A)
%方法1: 算術平均法
Sum_A = sum(A);
SUM_A = repmat(Sum_A,n,1);
Stand_A = A ./ SUM_A;
Stand_A = A ./ Sum_A; % 這樣也可以的
disp('算術平均法求權重的結果為:');
disp(sum(Stand_A,2)./n)
%方法2: 幾何平均法
Prct_A = prod(A,2);
Prct_n_A = Prct_A .^ (1/n);
disp('幾何平均法求權重的結果為:');
disp(Prct_n_A ./ sum(Prct_n_A))
%方法3: 特徵值法求權重
[V,D] = eig(A);
Max_eig = max(max(D))
[r,c]=find(D == Max_eig , 1);
disp('特徵值法求權重的結果為:');
disp( V(:,c) ./ sum(V(:,c)) )
%計算一致性比例CR
CI = (Max_eig - n)/(n-1);
RI=[0 0.0001 0.52 0.89 1.12 1.26 1.36 1.41 1.46 1.49 1.52 1.54 1.56 1.58
1.59];
% 這里n=2時,一定是一致矩陣,所以CI = 0,為了避免分母為0,將這里的第二個元素改為了很接近0的正數
CR=CI/RI(n);
disp('一致性指標CI=');disp(CI);
disp('一致性比例CR=');disp(CR);
if CR<0.10
disp('因為CR<0.10,所以該判斷矩陣A的一致性可以接受!');
else
disp('注意:CR >=
0.10,因此該判斷矩陣A需要進行修改!');
end

㈡ matlab編程入門需要怎麼做

入門需要做下面幾個方面事:

1、M語言編程。這是所有Matlab操作的基礎,Matlab的所有功能都是通過M語言來實現的。M語言是一種簡單的腳本語言,學習M語言,要學會基本的語句,還要能夠掌握基本的文件IO,GUI開發,數據導入,矩陣操作等等。

2、科學計算。科學計算是matlab最為強大的功能之一,這一部分的學習實質上是對大學數學的一個復習。你得復習微分方程的建立,積分求導的法則,線性代數的基本理論。復習完這些知識,再來進行各種計算。

3、機器學習。Matlab內置了豐富的機器學習庫最新版的matlab甚至支持深度學習以及GPU運算,只需要一些簡單的M語言編程就能快速搭建起來一個網路。

4、模擬模擬。能夠進行模擬模擬也是Matlab的一大特色功能,在科學領域,小到原子運行,大到宇宙爆炸,沒有他不能勝任的;在工程領域,電磁場模擬,機械結構評估,水利電力模擬,Matlab幾乎無所不能。

注意事項:

1、我們必須下載好一個matlab版本,一般來說新版的話,它的內置命令函數簡化,操作容易上手快,對基礎知識的儲備也不是很多。

2、這款軟體需要一定的數學知識,最為重要的是懂些矩陣和線性代數的知識,為了更好的更直觀地表達數據的可視化。

3、後面我們自己可以找一本有關matlab的書籍教材,網上資料很多,找一本然後按照上面的例子上手matlab。

4、最後,我們再根據具體的工程、項目的需求來驗證我們的matlab知識。

㈢ Matlab編程

60個同學抽60個題目且題號各不相同,用matlab實現,需要使用matlab的randperm函數,代碼如下:

截圖效果2

tihao=randperm(60);xuehao=1:60;for i=xuehao;disp(sprintf('學號為%d的同學,恭喜你,抽中第%d題 ',i,tihao(i)));end;

㈣ matlab如何編程

㈤ 用matlab可以學到的編程技巧

1、入門——學會數學(矩陣)方面的有關操作,及其各類常見函數的應用。 2、再次入門——學會用matlab面向對象語言的編程方法技巧。 3、略窺門徑——由於matlab僅僅是一個工具軟體,所謂的傻瓜語言,所以它僅僅是一個輔助性的東西,不是為了學習matlab而學習matlab,我們最重要的還是讓他來為我們服務,應該根據自己的現階段具體應用領域或者以後的領域具體而定,matlab提供很多工具箱(信號處理、控制、語音等等),定位好自己,事半功倍。 4、自己摸索——matlab不像C語言,它很散,應該自己在工作學習中記下使用的函數/技巧/程序,向高手方向進發。

㈥ 問一下大神matlab應該怎麼編程

不需要用循環,直接使用邏輯數組運算更快。

我假設你的x和x(1)--x(n)是不同的變數,那麼我用a來表示你的x,用x數組代表你的x(1)--x(n)
我隨便給這些數賦值

a=10;
x=1:3:30;
k=5;

temp = true(size(x));
temp(k) = false;

y = prod(a - x) / prod(x(k) - x(temp));

a-x是生成數組[a-x(1), a-x(2), ..., a-x(n)],prod()是吧這個數組相乘

temp是一個邏輯數組,和x相同大小,並且只有第k個數是false。x(temp)就是生成[x(1), x(2),..., x(k-1), x(k+1), ..., x(n)]

其他的應該容易理解

補充:拉格朗日插值多項式可也這么寫:
%x0,y0是已知各點坐標,共n點
x0 = [1, 2, 3];
y0 = [1, 8, 27];
n = length(x0);

%x是要求的點
x = 4;

y = 0;
for k = 1:n
temp = true(size(x0));
temp(k) = false;
y = y + y0(k) * prod(x - x0(temp)) / prod(x0(k) - x0(temp));
end

閱讀全文

與如何用matlab編程相關的資料

熱點內容
nfs怎麼加密ipsec 瀏覽:245
國二考試調用編譯器運算選擇題 瀏覽:750
同濟大學高等數學pdf 瀏覽:234
延時的宏命令怎麼設置 瀏覽:596
資料庫有哪些加密 瀏覽:209
改之理反編譯注冊教程 瀏覽:391
什麼是編譯程序和翻譯程序 瀏覽:207
python課程心得總結 瀏覽:17
派派中怎麼看對方在哪個伺服器 瀏覽:794
xp配置java環境變數配置 瀏覽:7
python中1到100怎麼算 瀏覽:765
小度我想看程序員 瀏覽:507
bs刷裝備建立後文件夾沒有 瀏覽:81
找漫畫看應該下載什麼app 瀏覽:182
如何在vps上搭建自己的代理伺服器 瀏覽:744
nginxphp埠 瀏覽:403
內臟pdf 瀏覽:152
怎麼看雲伺服器架構 瀏覽:87
我的世界國際服為什麼登不進伺服器 瀏覽:998
微盟程序員老婆 瀏覽:932