matlab建立m檔案對矩陣排序的問題

2022-12-11 21:16:23 字數 1546 閱讀 4767

1樓:匿名使用者

function [r] = my_sort(a)

r = st(a,2);

a = sort(r(:,2));

k = 1;

while k<=length(a)

id = find(r(:,2)==a(k))';

if id>1

b = r(k:k+length(id)-1,:);

b = st(b,3);

r(k:k+length(id)-1,:) = b;

end;

k = k+length(id);

end;

function r = st(b,cc)

a = sort(b(:,cc));

k = 1;

while k<=length(a)

id = find(b(:,cc)==a(k))';

p = length(id);

r(k:k+p-1,:) = b(id,:);

k = k+p;

end;

% 以上存為 my_sort.m

% 呼叫

r = my_sort(a);

a =4     0     2     8     1     4     6     7     8

3     4     6     4     1     4     6     3     3

3     8     9     8     4     4     9     0     6

3     9     6     7     8     9     5     4     7

3     2     8     6     4     0     4     7     1

5     1     0     3     8     2     1     7     9

1     8     1     1     4     0     6     9     5

>> my_sort(a)

ans =

4     0     2     8     1     4     6     7     8

5     1     0     3     8     2     1     7     9

3     2     8     6     4     0     4     7     1

3     4     6     4     1     4     6     3     3

1     8     1     1     4     0     6     9     5

3     8     9     8     4     4     9     0     6

3     9     6     7     8     9     5     4     7

2樓:匿名使用者

a=[1 4 5

2 5 7

3 5 6];

b=sortrows(a,[2 3]);

matlab如何建立並呼叫m檔案

用任何方式創 bai建都行,包括記du事本,或者是zhimatlab自帶的編譯器,然後dao將matlab工作目錄切換到檔案版所在目錄,直接輸權入檔名執行。或者在任何目錄下輸入該檔案的完全路徑。m檔案有兩種格式,一種叫做script,就是將一系列的命令寫成一個檔案。執行這種檔案相當於一次性執行了很多...

如何在matlab中建立m檔案,matlab中如何建立一個m檔案?

matlab的m檔案分為兩種,1 指令碼檔案,就是由一堆命令構成的,裡面第一行不是 function 開頭,這種檔案比如是name.m 就在命令視窗裡輸入name回車就行 2 函式檔案,第一行為function 比如說是function y name x 這種檔案,函式名與檔名是一致的,在命令視窗裡...

matlab建立M檔案編寫程式,求1 1000 的值

程式如下 s 1 sum 0 for i 1 1000 s s i sum sum 1 s endsum c語言程式設計題,計算s 1 1 2 1 3 1 4.1 m n是整型,執行1 n後也是個整型。修改 include int main printf f n s return 0 由於你的n是i...