2 回答

TA貢獻1812條經驗 獲得超5個贊
1、bounds=[-1;1]'得到的其實就是一個行向量[-1 1],你可以把它復制來運行一下就行了;單引號就是轉置的意思,因為“;”表示“-1”和“1”是處于兩行的,轉置一下就回來了。
2、(bounds(:,2)-bound(:,1))是說“bounds”這個二維數組的第二列元素減去第一列元素。
3、不是。你這樣就行了:
function S=bgg(x,y,z,o,p)
。。。
S(i)= ;或者直接S= ;
就是說你把函數中的變量,不管是向量還是矩陣,直接放在返回值處就行。甚至
m=3;S=[1 5 9 4];你想二者都返回,那么function [m,S]=bgg(x,y,z,o,p),并且主函數這樣[m,S]=bgg(x,y,z,o,p),接收就行了。
4、方括號主要是把向量或矩陣的值羅列出來等功能,小括號一是表示運算優先級,二是作為引用元素的角標,三是包含函數的輸入參數。

TA貢獻1802條經驗 獲得超4個贊
1).在MATLAB中'是表示轉置,[-1;1]得到的是一個列向量,所以bounds=[-1;1]'得到的就是一個行向量[-1 1];
2).與1同理,首先bounds(:,2)表示的是bounds的第二列,在此:是表示所有的行,所以bounds(:,2)-bound(:,1)是bounds的第二列減去第一列,加'號轉置后是表示將得到的一列在變成行向量;
3).當然,上面也說了;
4).這問就要注意了,要用function f=bgg(x,y,z,o,p),返回的f就可以是矩陣了;要注意在MATLAB中不管要求的返回值是向量還是矩陣,直接放在返回值處就行,1個返回值就用上面的形式,兩個就用function [m,n]=bgg(x,y,z,o,p)的形式,3個同理了;
5).方括號主要是把向量或矩陣的值羅列出來,比如[1:2:6]就表示向量[1,3,5];小括號一是表示運算優先級,二是作為引用元素的角標,比如a(1)表示a的第1個元素,a(:,4)表示a的第4列元素,a(1,:)表示a的第一行元素,三是包含函數的輸入參數,比如你上面的bgg(x,y,z,o,p)就是這個用法;
- 2 回答
- 0 關注
- 285 瀏覽
添加回答
舉報