2016-10-05 83 views
-5

請你幫我這裏面的情節:MATLAB,循環

污染PT的水平,根據鉑+ 1 = e0.02Pt演變加班。假設 P0 = 5。使用循環,計算100個週期的P的演變。然後繪製結果。

我試圖像許多不同的方式:

for p = 5:1:100; x = p; y = exp(0.02)*x; plot(x,y,'-'); drawnow; 
pt = (1:120); for p = 5:1:100; pt =exp(0.02)*p; plot(p, pt, '-');drawnow; end 

沒有任何成功。謝謝你的幫助!

+0

歡迎來到Stack Overflow!請查看我們的[SO問題清單](http://meta.stackoverflow.com/questions/260648/stack-overflow-question-checklist)來幫助你提出一個好問題,從而得到一個很好的答案。 –

+5

你的問題不是MATLAB相關的。你的問題是,你不明白你的要求。您需要隨着時間的推移繪製人口數量,而不是先前的人口數量與之前的人口數量。建議:1)手工完成一些計算步驟,2)查看模式,3)在MATLAB中實現該計算模式。 – 2016-10-05 06:01:25

回答

0

你首先需要認識到,問題是什麼。您需要根據以前的計算來計算下一步。所以代碼應該是這樣的:

p=zeros(100,1); 
p(1)=5; 
for t = 2:1:100; 
    p(t)=exp(0.02)*p(t-1); 
end 
plot(p,'.'); 
xlabel('time') 
ylabel('pollution') 
title('pollution over time')