1樓:聖鸞
你每次迴圈生成的值是什麼形式——標量,向量,矩陣,或是不定?標量的情況最簡單,如果是向量和矩陣,就要考慮你打算用什麼樣的形式儲存了。
通常採用兩種方法(以標量為例):
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
前一種做法用起來可能更省事一些,但如果迴圈次數多,陣列反覆自動擴充套件會造成效率很低,這種情況應該考慮使用第二種方法。
2樓:
for k=1:1:14 %靈敏度校驗mpc.bus(k,3)=0.9*mpc.bus(k,3);
[basemva(k), bus(k), gen(k), branch(k), success(k), et(k)]=runpf(mpc);end
matlab怎麼把每次迴圈的結果寫到txt檔案裡?
3樓:萬古虛空
把第二行把開啟方式『wt』,改為『a』,就可以了。
close all;
clear all;
for i=1:5
a=5+i;
fp=fopen('d:\ztq.txt','a');
fprintf(fp,'%d',a);
fclose(fp);
endmatlab 常見的開啟方式:
『r』:唯讀方式開啟檔案(預設的方式),該檔案必須已存在。
『r+』:讀寫方式開啟檔案,開啟後先讀後寫。該檔案必須已存在。
『w』:開啟後寫入資料。該檔案已存在則更新;不存在則建立。
『w+』:讀寫方式開啟檔案。先讀後寫。該檔案已存在則更新;不存在則建立。
『a』:在開啟的檔案末端新增資料。檔案不存在則建立。
『a+』:開啟檔案後,先讀入資料再新增資料。檔案不存在則建立。
你用'wt'開啟,每次開啟如果寫入資料的話都會先更新檔案。老內容就沒了.
matlab 儲存每次迴圈的結果
4樓:匿名使用者
cyclenum = 500; %假設迴圈次數為500xlist = zeros(2, cyclenum); %儲存改變後x的值
x = [0, 10]';
for ii = 1:cyclenum
x = x + 1; %假設每次迴圈,x值加1xlist(:, ii) = x; %儲存改變後的xend%迴圈結束,xlist中儲存了所有x,每一列對應乙個x。畫圖即可。
5樓:匿名使用者
預乙個陣列,將每次計算結果都記錄下來,然後plot就ok
matlab迴圈並將每次迴圈的結果輸出到同一txt文件中
6樓:匿名使用者
問題bai二:
fid = fopen('data.txt', 'a'); % 新建(若不du
存在)或開啟乙個名為data.txt的檔案for ...
fprintf(fid, '%5d ', d); % d為每
zhi次要寫入的數dao
據,專『%5d』控制資料寫入的格式
endfclose(fid); % 操作屬
完成後,關閉檔案
matlab程式編寫中n個迴圈,迴圈一次儲存一次資料,在進行下一次迴圈
7樓:匿名使用者
可以定義乙個空向量,迴圈中每一次計算把結果加到向量末尾(或者頭部),就像鍊表操作一樣。這樣每一次迴圈中的結果就都被存下來了。
給出示例**如下:
%%clc;clear;
a=;%定義空向量
for i=1:5
t=2^i;%迴圈中每次計算2^i
a=[a t];%計算結果每次都加到a的末端enda
執行結果如下:
a =2 4 8 16 32
8樓:
你要存成什麼格式的?
matlab 矩陣賦值,不要用迴圈
你這個需求很奇葩。你想想程式的三種結構無非是順序 選擇 迴圈。你不讓用迴圈,就只能用b a a a 這種方式了。其實個人感覺這種方式一般都需要用迴圈來解決,如果你感覺迴圈慢 說實話,我不清楚你迴圈慢的結論怎麼得出來的?即使慢也和迴圈沒什麼關係吧!那你可以減少迴圈次數,例如 b for i 1 n b...
matlab怎麼將迴圈變數作為函式的輸入值
椴 如果進行m檔案程式設計,而不知道輸入引數個數 採用 function y y varargin 在這裡我簡單描述一下varargin的相關使用 1 對輸入引數個數的判斷採用 比如y y1,y2 則nargin 2 所以你可以這樣程式設計 if nargin 2 y y y1,y2 end 2 當...
MATLAB中如何用for迴圈將結果代入矩陣中
推薦的做法是 1.如果每次迴圈產生等長的行向量,就把每次產生的行向量作為矩陣的一行,行標就是當前迴圈數 2.如果每次迴圈產生的向量不等長,就把每次產生的行向量作為cell陣列的一個元素,下標就是當前迴圈數。 終瀅鬱淑 錯在維數不一致,看看,f的大小是1x10,那麼w的維數也是1x10,而a,b,c的...