1樓:匿名使用者
方法一:
儲存每次迴圈結果;
方法二:
把迴圈放置在外層,將你主調程式放置內部
matlab,怎樣將每次迴圈中生成的值存在乙個矩陣裡?要簡單的方法。。。。。。
2樓:依然特雷西
1、第一步開啟matlab,命令列視窗輸入a=[1 4 6;7 8 9] ,建立矩陣。
2、第二步輸入b=reshape(a,1,6),將a矩陣變成行向量,其中1是1行,6是a矩陣的元素個數。
3、按回車鍵之後,可以看到a矩陣已經變成行向量了。
4、輸入b=[a(1,:),a(2,:)],通過矩陣裁剪的方式,也可以將矩陣變成行向量。
5、按回車鍵之後,就完成了。
3樓:匿名使用者
你每次迴圈生成的值是什麼形式——標量,向量,矩陣,或是不定?標量的情況最簡單,如果是向量和矩陣,就要考慮你打算用什麼樣的形式儲存了。
通常採用兩種方法(以標量為例):
1、把新的結果存在下標為end+1的位置,陣列會自動擴充套件,例如:
a=; for i=1:10, a(end+1)=i^2; end
2、預置陣列(一般使用zeros),並設定乙個計數器標記陣列當前的儲存位置,然後用該計數器作為下標進行儲存。例如:
a=zeros(10000,1); idx=0; while idx<10000, idx=idx+1; a(idx)=idx^(1/idx); end
前一種做法用起來可能更省事一些,但如果迴圈次數多,陣列反覆自動擴充套件會造成效率很低,這種情況應該考慮使用第二種方法。
4樓:匿名使用者
一。設 i 為迴圈次數,且只有乙個迴圈,a 為要儲存的矩陣,b 為每次迴圈生成的資料。
那麼就在迴圈裡寫
a(i)=b;
二。設 i 為外迴圈次數,j 為內迴圈次數,a 為要儲存的矩陣,b 為每次內迴圈生成的資料。
那麼就在迴圈裡寫
a(i,j)=b;
matlab 怎麼在for迴圈中儲存每一次迴圈得到的值並儲存在矩陣中?
5樓:無為
matlab下標是用括號表示的
l = 4; % l劃分層數
for i = 1:l-1;
b_latitude=pi/l; % l劃分層數
latitude(i)= i*b_latitude; %第i層時的緯度
latitude(i)= pi-i*b_latitude; %計算天頂距
b_longitude(i)= acos((cos(b_latitude)-(cos(latitude(i)))^2)/(sin(latitude(i)))^2); %每層上的經度差
ni=floor(2*pi/b_longitude(i)); %每條緯線上的格網點數
for j=1:ni;
longitude(i,j)= (j - 0.5)*2*pi/ni; %經度
endend
matlab中迴圈中怎麼將得到的結果以迴圈次數命名
6樓:匿名使用者
可以使用eval函式進行執行。
**如下:
clear all
close all
a=[1 2;3 4;5 6];
for i=1:3
eval(['b_' int2str(i) '=a(i,1)+2']);
end結果如圖:
matlab怎樣將迴圈輸出的資料結果放進乙個矩陣中,然後用作他用?
7樓:楊柳風
n = 10;
b = zeros(1,n);
for k = 1:n
r = k; % 運算後資料
b(k) = r; % 存入矩陣內
end;
8樓:匿名使用者
你直接打為
a=1:10
就可以啦
9樓:
for i=1:10
b(i) = i ;
endb
10樓:匿名使用者
b=zeros(1,10); 的位置放錯了,放到迴圈外,如下所示;
b=zeros(1,10);
for i=1:10
b(:,i)=i;
end或者
b=;for i=1:10
b=[b,i];end
11樓:渣扎乙個
b = zeros(1,10);%矩陣要在迴圈外定義,如果定義在迴圈裡每次迴圈時把之前的資料覆蓋
for i = 1 : 10 %只有最後乙個資料為10,前9個覆蓋為0
b(:,i)=i;end
12樓:簡簡單dan的
把b=zeros(1,10); 放到迴圈外就好了b=zeros(1,10);
for i=1:10
b(:,i)=iend
matlab中怎麼把迴圈中生成的數值存入乙個陣列中
13樓:匿名使用者
length=input('請輸入陣列的長度:');
for i=1:length
s(i)=((-1)^(i+1) +1)/2;
ends
14樓:
%迴圈外初始化
a =%迴圈內加一句
a = [a mse-flit];
matlab中,如何將矩陣數值逐個取出在迴圈中使用??????
15樓:
>> delta_x=[3 5 7 4 6 3];
>> delta_x(1)
ans =
3>> delta_x(2)
ans =5
16樓:匿名使用者
i=1:6
b(i)=delta_x(i)
試試看,希望對你有幫助!
matlab中如何讓迴圈中的某一句只執行一次?或如何對乙個變數初始化一次?
17樓:qq號
自然是將初始化寫在迴圈之前了。
在你這個裡就是將a=0寫在第一次呼叫function2之前了
matlab程式設計問題,迴圈語句怎麼加
建議把主程式修改如下 r 0.0425 t time to expiration t 2 輸入年數 dp defaut point sd short debt,ld long debt in xlsread 資料 修改後.xls b2 e118 n size in,1 out cell n 1,5 ...
matlab的引數積分程式設計,如何在matlab的m檔案裡編寫個積分程式
輸出圖形為 見附件 如何在matlab的m檔案裡編寫個積分程式 感覺不需要使用m檔案,根據你給的 函式f x 的引數x沒有作用啊。具體需求是什麼?下面是求積分 f x exp 0.5 x sin x pi 6 s quad f,0,pi matlab中帶引數的定積分求解 來個簡單點的。步長統一取0....
關於matlab程式設計出現的問題,關於matlab程式設計出現的問題
少了乙個end,for迴圈,if語句等都需要end收尾,而function則不需要這樣,所以不應該在函式的最後加end,而是在前面加,就像樓上那樣。還有弱弱地問下b i,j 是個數值把,k好像是個矩陣,兩個怎麼比呢,是不是第乙個迴圈有點問題?還有你說輸出的r1會是11個結果,但是你定義的好像是乙個1...
matlab程式設計出錯求大神指導,求大神解答matlab的程式問題
錯誤在於邏輯與 的使用,正確的 如下,糾正錯誤的地方已用 注釋說明 s0 50 k 5 r 0.2 sigma 0.3 t 0.5 a 428.5912 b 246.7252 c 801.6449 random a ones 10,100 從你的錯誤提示,看出,你的程式之前已經給random a賦值...
請教高手幫忙程式設計序用matlab編寫數值優化方法(最速下降法,懲罰函式法),具體題目如下
這種方法叫做 灰色 法 即 gm 1,1 模型 現在,想用matlab程式設計function gm1 1 x0 format long m,n size x0 x1 cumsum 請高手們幫忙如何編寫matlab編寫程式來求整數規劃的題目 1 求解整數規劃問題並不是matlab的強項,如果不是有要...